Arrêter ma ma macro lorsque cellule vide

Résolu/Fermé
dodorando Messages postés 8 Date d'inscription mardi 29 octobre 2013 Statut Membre Dernière intervention 27 octobre 2017 - 22 juin 2015 à 15:13
dodorando Messages postés 8 Date d'inscription mardi 29 octobre 2013 Statut Membre Dernière intervention 27 octobre 2017 - 22 juin 2015 à 16:51
Bonjour à tous,

Je tente de me mettre à la programmation VBA et tombe (malheureusement) sur un os.
J'ai créé une macro (collée ci-dessous)... mais celle-ci ne s'arrête pas lorsque les cellules de la colonne A sont vides. Elle continue à fonctionner.
Pourriez-vous m'aider à trouver la solution ?

D'avance merci pour votre aide,

Dim var_Matricule As String
var_Matricule = Range("a2").Value

Do While var_Matricule <> ""

ActiveCell.FormulaR1C1 = "=RIGHT(RC[-1],9)"
ActiveCell.Offset(0, 1).Activate
ActiveCell.FormulaR1C1 = "=LEFT(RC[-1],8)"
ActiveCell.Select
Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
Application.CutCopyMode = False
ActiveCell.Offset(1, -1).Activate


Loop
A voir également:

1 réponse

f894009 Messages postés 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024 1 701
22 juin 2015 à 15:54
Bonjour,

le principe c'est ca:
Sub Macro1()
        Range("B3:B" & [A65536].End(xlUp).Row).FormulaR1C1 = "=RIGHT(RC[-1],9)"
        Range("C3:C" & [A65536].End(xlUp).Row).FormulaR1C1 = "=LEFT(RC[-1],8)"
End Sub


mais avec vos ActiveCell, ca risque de panouiller
1
dodorando Messages postés 8 Date d'inscription mardi 29 octobre 2013 Statut Membre Dernière intervention 27 octobre 2017
22 juin 2015 à 16:47
Merci beaucoup pour la réponse... cependant ma macro doit être un peu foireuse, car ça ne s'arrête toujours pas, malgré tes préconisations...
Peut-être dois-je la réécrire !
0
dodorando Messages postés 8 Date d'inscription mardi 29 octobre 2013 Statut Membre Dernière intervention 27 octobre 2017
22 juin 2015 à 16:51
Bon... j'ai effectivement changé toute la macro en ne mettant que tes deux lignes et ça marche nickel !
Merci encore !
0