Problème VBA Excel
Résolu
dubol
-
melanie1324 Messages postés 1504 Date d'inscription Statut Membre Dernière intervention -
melanie1324 Messages postés 1504 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
J'essaie depuis 2 h de faire un petit code mais mes connaissances sont limitées en programmation et mes recherches infructueuses.
Mon programme permet de répéter une suite d'action dans Excel :
Prendre les cellules C2 et D2, les couper, les coller en A1 et B1, sauter une ligne entre 2 et 3 puis recommencer (prendre cellules C4 et D4, les couper, les coller en A3 et B3, sauter une ligne entre 4 et 5.......). A cela je voulais y ajouter une boucle qui arrête la marco lorsqu'il n'y a plus de donnée dans une cellule.
Voici mon code :
Pouvez-vous m'aider à résoudre les problèmes? Merci
le débogueur n'est déjà pas content pour cette ligne et je ne trouve pas pourquoi : Range("Cvar1:Dvar1").Select
J'essaie depuis 2 h de faire un petit code mais mes connaissances sont limitées en programmation et mes recherches infructueuses.
Mon programme permet de répéter une suite d'action dans Excel :
Prendre les cellules C2 et D2, les couper, les coller en A1 et B1, sauter une ligne entre 2 et 3 puis recommencer (prendre cellules C4 et D4, les couper, les coller en A3 et B3, sauter une ligne entre 4 et 5.......). A cela je voulais y ajouter une boucle qui arrête la marco lorsqu'il n'y a plus de donnée dans une cellule.
Voici mon code :
Sub Macro2() Dim var1 As Integer var1 = 2 Dim var2 As Integer var2 = 1 Dim var3 As Integer var3 = 3 Dim var4 As Boolean var4 = 0 'If var4 = False Then Range("Cvar1:Dvar1").Select Selection.Cut Range("Avar2").Select ActiveSheet.Paste Rows("var3:var3").Select Selection.Insert Shift:=xlDown var1 = var1 + 2 var2 = var2 + 2 var3 = var3 + 2 'If Range("Ai") = Null Then var4 = True 'End If End Sub
Pouvez-vous m'aider à résoudre les problèmes? Merci
le débogueur n'est déjà pas content pour cette ligne et je ne trouve pas pourquoi : Range("Cvar1:Dvar1").Select
A voir également:
- Problème VBA Excel
- Liste déroulante excel - Guide
- Word et excel gratuit - Guide
- Déplacer colonne excel - Guide
- Si ou excel - Guide
- Excel compter cellule couleur sans vba - Guide
6 réponses
Bonjour,
si tu veux sélectionner les cellules de la ligne var1 pour les colonnes C et D, tu ferais mieux d'écrire :
ou
Cordialement.
si tu veux sélectionner les cellules de la ligne var1 pour les colonnes C et D, tu ferais mieux d'écrire :
Range(Cells(var1,3),Cells(var1,4))
ou
Range("C" & var1 & ":" & "D" & var1)
Cordialement.
bonjour,
c'est tout à fait normal :
Sub Macro2()
Dim var1 As Integer
var1 = 2
Dim var2 As Integer
var2 = 1
Dim var3 As Integer
var3 = 3
Dim var4 As Boolean
var4 = 0
'If var4 = False Then
Range(cells(var1,3), cells(var1,4).Select
Selection.Cut
cells(var2,1).Select
ActiveSheet.Paste
Rows(var3).Select
Selection.Insert Shift:=xlDown
var1 = var1 + 2
var2 = var2 + 2
var3 = var3 + 2
'If Range("Ai") = "" Then var4 = True
'End If
End Sub
c'est tout à fait normal :
Sub Macro2()
Dim var1 As Integer
var1 = 2
Dim var2 As Integer
var2 = 1
Dim var3 As Integer
var3 = 3
Dim var4 As Boolean
var4 = 0
'If var4 = False Then
Range(cells(var1,3), cells(var1,4).Select
Selection.Cut
cells(var2,1).Select
ActiveSheet.Paste
Rows(var3).Select
Selection.Insert Shift:=xlDown
var1 = var1 + 2
var2 = var2 + 2
var3 = var3 + 2
'If Range("Ai") = "" Then var4 = True
'End If
End Sub
Cela fonctionne merci, ma boucle aussi mais par contre je n'arrive pas à l'arrêter quand il n'y a rien dans la cellule cible
Mon code :
Mon code :
Sub Macro2() Dim var1 As Integer var1 = 2 Dim var2 As Integer var2 = 1 Dim var3 As Integer var3 = 3 Dim var4 As Boolean var4 = 0 line18: If var4 = False Then Range(Cells(var1, 3), Cells(var1, 4)).Select Selection.Cut Cells(var2, 1).Select ActiveSheet.Paste Rows(var3).Select Selection.Insert Shift:=xlDown var1 = var1 + 2 var2 = var2 + 2 var3 = var3 + 2 If Cells(var1, 1) = Not Vide Then var4 = True GoTo line18 End If End Sub
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question