une condition ds IF pas valide

  • Initiateur de la discussion Xor
  • Date de début
X

Xor

Guest
Bonjour Forum

Merci tout d´abord à tous les spécialistes de ce forum qui nous facilite grandement la tâche par ces bons conseils

j´ai une petite boucle que j´étais fier d´avoir ecrite..
Mais en execuction c´est pas trop ca.. L´écriture ne doit pas être correcte.
La macro ne veut pas reconnaitre la condition du If j´ai l´impression
voici le code;

Sub CommandButton1_click()
Dim x As Variant
Dim y As Variant
Dim changementpartableau As String
Dim changementparcolonne As String
Dim r As Variant
Dim m As Byte

r = 3 'numero de lignes
For x = 5 To 10 Step 2 ' x numero de la colonne
For y = 29 To 27 + r 'y numero de la ligne
If Cells(x, y) <> Cells((x - 1), y) Then 'une catégorie est composé de 2 colonne
m = m + 1' nb de changement par categorie
End If
Next y
If m > 0 Then
Dim changementparcolonne = m & ' Changement dans ' & Cells(4, y - 1) ' titre de la categorie
End If
Next x
changementpartableau = Dim changementparcategorie & vbLf & changementpartableau ´
MsgBox changementpartableau
End Sub


Si quelqu´un peut m´expliquer le pourquoi de ce non fonctionnement..
Je lui en serai très reconnaissant...

Merci
Xor
 

PascalXLD

XLDnaute Barbatruc
Modérateur
Bonjour

Bizarre ton code

Sub CommandButton1_click()
Dim x As Variant
Dim y As Variant
Dim changementpartableau As String
Dim changementparcolonne As String
Dim r As Variant
Dim m As Byte

r = 3 'numero de lignes
For x = 5 To 10 Step 2 ' x numero de la colonne <==Pourquoi jusqu'à 10 alors que tu step 2 ???
For y = 29 To 27 + r 'y numero de la ligne <== POurquoi pas 30 direct ?
If Cells(x, y) <> Cells((x - 1), y) Then 'une catégorie est composé de 2 colonne
m = m + 1' nb de changement par categorie
End If
Next y
If m > 0 Then
Dim changementparcolonne = m & ' Changement dans ' & Cells(4, y - 1) ' titre de la categorie <== Holla c'est quoi ce Dim de déclaration ici il n'a rien à y faire
End If
Next x
changementpartableau = Dim changementparcategorie & vbLf & changementpartableau ´ <== Holla c'est quoi ce Dim de déclaration ici il n'a rien à y faire
MsgBox changementpartableau
End Sub

Bon courage
 
X

Xor

Guest
Salut Pascal

Pardon pour les 'DIM' et ... j´ai fait un mauvais copier coller mais dans mon code VBA il était bien écrit..

Celui-ci ne valide jamais la condition du IF bien que ds mon tableau les coordonnées de ces cellules donnes deux cellules différentes.. je comprends pas :woohoo: :woohoo: :woohoo:

Private Sub Commandbutton1_Click()

Dim x As Variant
Dim y As Variant
Dim changementparcolonne As String
Dim changementpartableau As String
Dim m As Byte
Dim q As Variant

For x = 5 To 11 Step 2
For y = 29 To 30
If Cells(x, y).Value <> Cells((x - 1), y).Value Then
m = m + 1
End If
Next y
If m > 0 Then
changementparcolonne = m & ' Cambios en ' & Cells(4, y - 1)
End If
Next x
changementpartableau = changementparcolonne & vbLf & changementpartableau
MsgBox changementparcolonne

End Sub

SI qq un a une idée

Xor
 

porcinet82

XLDnaute Barbatruc
salut Xor, Pascal,

je ne comprend, je viens de tester ton code chez moi et il fonctionne parfaitement, peut etre qu'en donnant une partie de ton fichier quelqu'un pourrait regarder de plus pres et regarder ou se situe le problème

@+
 

PascalXLD

XLDnaute Barbatruc
Modérateur
Re

Je viens de penser à une chose en regardant ton premier code

For x = 5 To 10 Step 2 ' x numero de la colonne
For y = 29 To 27 + r 'y numero de la ligne
If Cells(x, y) <> Cells((x - 1), y) Then 'une catégorie est composé de 2 colonne

en gros tu dis que les x sont tes colonnes et tes y tes lignes

MAIS cells(ligne,colonne) et toi tu mets cells(x,y) soit l'inverse

Bonne soirée
 
X

Xor

Guest
Salu Forum
Salu Pascal
Salu Porcinet

Merci Beaucoup.. J´avais en effet interchanger les lignes et les colonnes..... Vraiment bête...
J ai beau passé 3h sur le programme mais ca a pas fait tilt...

Xor
 

Discussions similaires

Statistiques des forums

Discussions
312 597
Messages
2 090 113
Membres
104 389
dernier inscrit
qzdqzdqzd