A voir également:
- [Excel - VBA]
- Liste déroulante excel - Guide
- Si et excel - Guide
- Aller à la ligne excel - Guide
- Word et excel gratuit - Guide
- Mise en forme conditionnelle excel - Guide
10 réponses
Polux31
Messages postés
6917
Date d'inscription
mardi 25 septembre 2007
Statut
Membre
Dernière intervention
1 novembre 2016
1 204
23 mai 2008 à 14:13
23 mai 2008 à 14:13
Bonjour,
il faut incrémenté le numéro de ligne à chaque fin de boucle :
;o)
polux
il faut incrémenté le numéro de ligne à chaque fin de boucle :
Dim i As Long i = 64 While Range("B" & i).value <> "--" 'code à exécuter i = i + 1 Wend
;o)
polux
Voila ce que j'ai fait mais ma structure doit etre des plus mauvaises :s
Sub Bouton66_QuandClic()
Sheets.Add(after:=Sheets(Sheets.Count)).Name = "Nouvelle"
Do
Range("B64") = Range("B64") + 1
Worksheets("Projection").Select
Worksheets("Projection").Range("A65:E" & Cells(Rows.Count, "A").End(xlUp).Row).Copy
Sheets("Nouvelle").Select
Range("A1").Select
Selection.PasteSpecial Paste:=xlPasteValuesAndNumberFormats, Operation:= _
xlNone, SkipBlanks:=False, Transpose:=False
Loop Until Range("B64") = "--"
End Sub
Sub Bouton66_QuandClic()
Sheets.Add(after:=Sheets(Sheets.Count)).Name = "Nouvelle"
Do
Range("B64") = Range("B64") + 1
Worksheets("Projection").Select
Worksheets("Projection").Range("A65:E" & Cells(Rows.Count, "A").End(xlUp).Row).Copy
Sheets("Nouvelle").Select
Range("A1").Select
Selection.PasteSpecial Paste:=xlPasteValuesAndNumberFormats, Operation:= _
xlNone, SkipBlanks:=False, Transpose:=False
Loop Until Range("B64") = "--"
End Sub
Polux31
Messages postés
6917
Date d'inscription
mardi 25 septembre 2007
Statut
Membre
Dernière intervention
1 novembre 2016
1 204
23 mai 2008 à 14:58
23 mai 2008 à 14:58
Tu ne change pas de numéro de ligne automatiquement.
J'ai pas testé mais test ça :
Sub Bouton66_QuandClic()
Dim i As Long
i = 64
Sheets.Add(after:=Sheets(Sheets.Count)).Name = "Nouvelle"
While Range("B" & i).Value <> "--"
Range("B64") = Range("B64") + 1 '<== je ne vois pas pourquoi ?
Worksheets("Projection").Select
Worksheets("Projection").Range("A" & i + 1 & ":E" & Cells(Rows.Count, "A").End(xlUp).Row).Copy
Sheets("Nouvelle").Select
Range("A1").Select
Selection.PasteSpecial Paste:=xlPasteValuesAndNumberFormats, Operation:= _
xlNone, SkipBlanks:=False, Transpose:=False
i = i + 1
wend
End Sub
J'ai pas testé mais test ça :
Sub Bouton66_QuandClic()
Dim i As Long
i = 64
Sheets.Add(after:=Sheets(Sheets.Count)).Name = "Nouvelle"
While Range("B" & i).Value <> "--"
Range("B64") = Range("B64") + 1 '<== je ne vois pas pourquoi ?
Worksheets("Projection").Select
Worksheets("Projection").Range("A" & i + 1 & ":E" & Cells(Rows.Count, "A").End(xlUp).Row).Copy
Sheets("Nouvelle").Select
Range("A1").Select
Selection.PasteSpecial Paste:=xlPasteValuesAndNumberFormats, Operation:= _
xlNone, SkipBlanks:=False, Transpose:=False
i = i + 1
wend
End Sub
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Range("B64") = Range("B64") + 1 '<== je ne vois pas pourquoi ?
C'est ce qui me permet de changer de jour dans la case B64
de passer de 01/05/2008 a 02/05/2008 par exemple !
Mais sinon le code que tu mas passé la tourne indéfiniment, Excel plante :s
C'est ce qui me permet de changer de jour dans la case B64
de passer de 01/05/2008 a 02/05/2008 par exemple !
Mais sinon le code que tu mas passé la tourne indéfiniment, Excel plante :s
Polux31
Messages postés
6917
Date d'inscription
mardi 25 septembre 2007
Statut
Membre
Dernière intervention
1 novembre 2016
1 204
23 mai 2008 à 15:07
23 mai 2008 à 15:07
es-tu sur d'avoir une cellule qui contient "--" ???
Elle se trouve bien dans la liste déroulante mais meme si je met la derniere valeur de la liste en condition d'arret("30/06/2008") il ne s'arrete pas
L'autre solution vu que la liste déroulante serait de sarrété quand B64 <> ##/06/####
Je sais pas si c'est possible
Je sais pas si c'est possible
Polux31
Messages postés
6917
Date d'inscription
mardi 25 septembre 2007
Statut
Membre
Dernière intervention
1 novembre 2016
1 204
23 mai 2008 à 16:41
23 mai 2008 à 16:41
Je ne sais pas, je vais essayer de voir ce week comment faire et je te tiens au courant si j'ai une solution
;o)
;o)