Calcul de ratio par rapport cell précédente et comparaison

noobie -  
pijaku Messages postés 13513 Date d'inscription   Statut Modérateur Dernière intervention   -
Bonjour,

Pourriez-vous me dire ce qui cloche avec cet essai de code :

Sub test()

Dim i As Integer

For i=1 To 4
If Range("B" & i+1).Value/Range("B" & i).Value>=1.1 And Range("C" & i+1).Value/Range("C" & i).Value<1.1 Then 
Range("D" & i+1)="à vérifier"
End If
Next i

End Sub


Ca me renvoit "Erreur d'exécution BASIC.
Sous-procédure ou procédure de fonction non définie."

J'ai essayer plein d'autres formes d'écriture mais je ne trouve pas.
du style :

Dim i As Integer
Dim ligneA As Integer , ligneB As Integer , ligneC As Integer
ligneA = Range("A2:E2")
ligneB = Range("A3:E3")
ligneC = Range("A4:E4")
For i=1 To 4
If ligneA(i+1)/ligneA(i) >=1.1 And ligneB(i+1)/ligneB(i) <1.1 Then 
ligneC(i+1)="à vérifier"
End If
Next i


Merci pour toute aide!

1 réponse

  1. pijaku Messages postés 13513 Date d'inscription   Statut Modérateur Dernière intervention   2 773
     
    Bonjour,

    A priori rien ne cloche avec ce code. Exécuté seul dans un classeur "neuf", il tourne sans souci.
    Du coup, pour vérifier, il nous faudrait votre classeur.
    Pour cela, vous pouvez nous le faire passer en allant créer un lien vers votre fichier sur : http:cjoint.com et revenir coller le lien ici.

    0
    1. noobie
       
      Bonjour Pijaku,
      Je pense que le problème vient alors de LibreOffice.
      Pour la base de données j'ai simplement écrit des données au hasard pour tester si l'écriture du code était correcte. Et pour la deuxième écriture ça me disait impossible de diviser par zero
      Je vais essayer sous Excel
      Cordialement et merci,
      0
      1. pijaku Messages postés 13513 Date d'inscription   Statut Modérateur Dernière intervention   2 773 > noobie
         
        Ben oui.
        Un début de réponse glanée sur le Net :
        Le langage Basic entre les deux logiciels est incompatible. Vous devez donc redévelopper vos macros.
        Il existe depuis la 2.4.0 de LibreOffice, un interpréteur de VBA Excel mais il est loin d'être parfait. Il suffit de mettre en début de code la ligne :

        Option Compatible

        ou
        Option VBASupport 1
        0