IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Erreur Type Mismatch


Sujet :

Macros et VBA Excel

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 10
    Points : 6
    Points
    6
    Par défaut Erreur Type Mismatch
    Bonjour,

    Débutant en VBA, j'ai un nouveau problème avec un de mes codes...

    J'ai une constante
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Public Const AMOUNT = 10000
    et une variable dont je voudrais faire la division pour donner une nouvelle variable J'ai donc betement écrit :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Opp = AMOUNT / AskPrice
    .

    AskPrice a deux chiffres après la virgule et son calcul ne pose pas de problème( je le calculais précédement dans mon ancien code ).

    Par contre, j'ai toujours une erreur "Type Mismatch" pour le calcul de Opp. Ou est le problème?

    Merci

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour

    C'est normal, tu ne peux diviser des chaines (String)
    Remplace tes déclarations où il y a String par Double et va faire un tour dans l'aide Access sur les types de données.

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 10
    Points : 6
    Points
    6
    Par défaut
    Merci beaucoup

  4. #4
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par DonaldTron Voir le message
    Merci beaucoup
    Et alors, cela te convient ? Si c'est oui, merci de cliquer sur

  5. #5
    Futur Membre du Club
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 10
    Points : 6
    Points
    6
    Par défaut
    Voila, en fait, je croyais que le problème était résolu mais j'ai un nouveau problème de "type mismatch". J'ai remplacé tous les CStr par des CDbl dans mon code et çà ne marche toujours pas.

    Les données avec lesquelles je travaille dans les cellule de la sheet "tickers" sont à 2 décimales:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
     
    Option Explicit
    Dim lastId As Long
    Dim offset As Long
    Public runWhen As Double
    Public Const RUN_INTERVAL_SECONDS = 1
    Public Const CapitalAmount = 10000
    Public Const ProfitBarrier = 20
    Public Const RUN_WHAT = "Example1.ArbSearch"
    Public Const OppLim = 0.05
     
     
     
    Sub ArbSearch()
        Dim symbol As String
        Dim SecType As String
        Dim Exchange As String
        Dim BidPrice As Double
        Dim AskPrice As Double
        Dim BidPrice2 As Double
        Dim AskPrice2 As Double
        Dim logSuccess As Boolean
        Dim TickerRow As Integer
        Dim NumShares As Double
     
        For TickerRow = 8 To 87
     
            symbol = UCase(Worksheets("Tickers").Cells(TickerRow, 1).value)
            SecType = UCase(Worksheets("Tickers").Cells(TickerRow, 2).value)
            Exchange = UCase(Worksheets("Tickers").Cells(TickerRow, 7).value)
            BidPrice = CDbl(Worksheets("Tickers").Cells(TickerRow, 15).value)
            AskPrice = CDbl(Worksheets("Tickers").Cells(TickerRow, 16).value)
            BidPrice2 = CDbl(Worksheets("Tickers").Cells(TickerRow + 1, 15).value)
            AskPrice2 = CDbl(Worksheets("Tickers").Cells(TickerRow + 1, 16).value)
            NumShares = CapitalAmount / AskPrice2
     
            If symbol = UCase(Worksheets("Tickers").Cells(TickerRow + 1, 1).value) And Exchange <> UCase(Worksheets("Tickers").Cells(TickerRow + 1, 7).value) Then
                    If (BidPrice2 - AskPrice) * NumShares > ProfitBarrier Or (BidPrice - AskPrice2) * NumShares > ProfitBarrier Then
            MsgBox symbol
            MsgBox BidPrice
            MsgBox AskPrice
            MsgBox BidPrice2
            MsgBox AskPrice2
            End If
        End If
     
        Next TickerRow
     
        startTimer ' schedule next run
    End Sub
     
    Sub startTimer()
        runWhen = Now + TimeSerial(0, 0, RUN_INTERVAL_SECONDS)
        Worksheets("Auto Orders").Range("X3").value = Format(runWhen, "yyyy-mm-dd hh:mm")
        Application.OnTime earliesttime:=runWhen, procedure:=RUN_WHAT, schedule:=True
    End Sub
     
    Sub stopTimer()
       On Error Resume Next
       Application.OnTime earliesttime:=runWhen, procedure:=RUN_WHAT, schedule:=False
       Worksheets("Auto Orders").Range("X3").value = "Stopped"
    End Sub

    Merci beaucoup de m'aider. C'est difficile VBA au début.

Discussions similaires

  1. - Erreur Type Mismatch - additem Sheets( ).cells( )
    Par nono le golfeur dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 04/07/2007, 17h51
  2. Erreur type mismatch
    Par bugland dans le forum VB 6 et antérieur
    Réponses: 5
    Dernier message: 21/03/2007, 18h54
  3. Erreur : Type mismatch !
    Par Interruption13h dans le forum Langage SQL
    Réponses: 2
    Dernier message: 25/01/2007, 20h21
  4. Erreur type Mismatch
    Par bov13 dans le forum Access
    Réponses: 7
    Dernier message: 25/09/2006, 10h22
  5. Erreur : Type Mismatch
    Par ekinoxe dans le forum ASP
    Réponses: 1
    Dernier message: 17/02/2006, 09h51

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo