Microsoft 365 Problème macro incrémentation

  • Initiateur de la discussion Initiateur de la discussion de_hanstrapp
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

de_hanstrapp

XLDnaute Occasionnel
Bonjour à tous,

J'ai adapté cette macro trouvé sur internet :

VB:
Sub Incrémentation()

    Dim xCount As Integer
LableNumber:
    xCount = Application.InputBox("Nombre de lignes à incrémenter", "Test incrémentation", , , , , , 1)
    If xCount < 1 Then
        MsgBox "La valeur saisie doit être supérieure à 0, merci de renseigner une valeur correcte.", vbInformation, "Test incrémentation"
        GoTo LableNumber
    End If
    ActiveCell.EntireRow.Copy
    Range(ActiveCell.Offset(1, 0), ActiveCell.Offset(xCount, 0)).EntireRow.Insert Shift:=xlDown
    Application.CutCopyMode = False

End Sub

Elle fonctionne parfaitement, mais je voulais savoir comment adapter le code pour éviter le message d'erreur quand on clique sur "Annuler" ou que l'on souhaiter fermer via la croix.
Pour ma gouverne : à quoi correspond le point d'interrogation à côté de "Test incrémentation" ? Possibilité de l'enlever ?

Merci pour vos éclairages !

de_hanstrapp
 
Bonjour à tous,

J'ai adapté cette macro trouvé sur internet :

VB:
Sub Incrémentation()

    Dim xCount As Integer
LableNumber:
    xCount = Application.InputBox("Nombre de lignes à incrémenter", "Test incrémentation", , , , , , 1)
    If xCount < 1 Then
        MsgBox "La valeur saisie doit être supérieure à 0, merci de renseigner une valeur correcte.", vbInformation, "Test incrémentation"
        GoTo LableNumber
    End If
    ActiveCell.EntireRow.Copy
    Range(ActiveCell.Offset(1, 0), ActiveCell.Offset(xCount, 0)).EntireRow.Insert Shift:=xlDown
    Application.CutCopyMode = False

End Sub

Elle fonctionne parfaitement, mais je voulais savoir comment adapter le code pour éviter le message d'erreur quand on clique sur "Annuler" ou que l'on souhaiter fermer via la croix.
Pour ma gouverne : à quoi correspond le point d'interrogation à côté de "Test incrémentation" ? Possibilité de l'enlever ?

Merci pour vos éclairages !

de_hanstrapp
Bonjour,
Comme ceci peut-être
VB:
Sub Incrémentation()

    Dim xCount$
LableNumber:
    xCount = Application.InputBox("Nombre de lignes à incrémenter", "Test incrémentation", , , , , , 1)
       If xCount = "" Or Not IsNumeric(xCount) Then Exit Sub
    If xCount < 1 Then
        MsgBox "La valeur saisie doit être supérieure à 0, merci de renseigner une valeur correcte.", vbInformation, "Test incrémentation"
        GoTo LableNumber
    End If
    ActiveCell.EntireRow.Copy
    Range(ActiveCell.Offset(1, 0), ActiveCell.Offset(xCount, 0)).EntireRow.Insert Shift:=xlDown
    Application.CutCopyMode = False

End Sub
 
Bonjour,
Comme ceci peut-être
VB:
Sub Incrémentation()

    Dim xCount$
LableNumber:
    xCount = Application.InputBox("Nombre de lignes à incrémenter", "Test incrémentation", , , , , , 1)
       If xCount = "" Or Not IsNumeric(xCount) Then Exit Sub
    If xCount < 1 Then
        MsgBox "La valeur saisie doit être supérieure à 0, merci de renseigner une valeur correcte.", vbInformation, "Test incrémentation"
        GoTo LableNumber
    End If
    ActiveCell.EntireRow.Copy
    Range(ActiveCell.Offset(1, 0), ActiveCell.Offset(xCount, 0)).EntireRow.Insert Shift:=xlDown
    Application.CutCopyMode = False

End Sub
Bonjour Jacky67, merci pour votre aide mais malheuresement cela m'indique une incompatibilité de type lors de l’exécution de la macro.
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
7
Affichages
722
Réponses
9
Affichages
1 K
Retour