VBA excel/Autocad

Résolu/Fermé
Feng - 13 juin 2012 à 15:51
 Feng - 14 juin 2012 à 11:08
Bonjour,

j'ai un petit problème, c'est de la logique de programmation.... j'ai déjà essayé plusieurs solutions, mais ça ne marche toujours pas. Je suis donc venue vers vous pour demander de l'aide..




For m = 1 To NumberOfLine
For j = 1 To NumberOfColumn
Sheets("Control System I O list").Select
If Cells(m, 14).Value = "JB-AI-7P" Then

Temp02 = Cells(m, j).Value
Sheets("Typical JB").Select
Cells(m, j) = Temp02

End If
Next j
Next m

voilà ma double boucle.... ce que je veux, c'est de copier les lignes qui correspondent à "JB-AI-7P" de la feuille "Control System I O list", dans la feuille "Typical JB". Mais je voudrais que dans la feuille "Typical JB" toutes les lignes se suivent. Ca veut dire qu'il ne créer pas de lignes vide entre les lignes remplie.....
Le problème vient donc de la dernière ligne "Cells(m, j) = Temp02" ....... j'ai essayé de remplacer m par "compte" que je définie en tant que integer , et j'ai initialisé compte = 1. et à la fin de chaque boucle j, compte = compte + 1.
Mais bien sur, ça ne marche pas....

Aurez vous des solutions pour ça?

Merci beaucoup de votre aide...




A voir également:

1 réponse

Bonjour,

Essaie avec ce code

compte = 1
For m = 1 To NumberOfLine
    If Sheets("Control System I O list").Cells(m, 14).Value = "JB-AI-7P" Then
        For j = 1 To NumberOfColumn
            Sheets("Typical JB").Cells(compte, j).Value =	_	
            Sheets("Control System I O list").Cells(m, j).Value 
        Next j
        compte = compte+1
    End If 
Next m 


A+
0
Bonjour,
J'ai résolu le problème en utilisant un tableau de 2 dimension.

Merci quand meme de votre aide.
0