Problème avec .AutoFill
Willzac Messages postés 266 Date d'inscription Statut Membre Dernière intervention -
Bonjour tout le monde;
J’ai le code suivant :
Private Sub UserForm_initialize()
'Incrémenter le ID_ACHAT
'-------------------------
Dim i As Integer
i = Sheets("ACH").Range("A" & Rows.Count).End(xlUp).Row
Sheets("ACH").Select
Range("A" & i).Select
Selection.AutoFill Destination:=Range("A" & i & ":A" & i + 1), Type:=xlFillDefault
TB1.Text = Sheets("ACH").Range("A" & i + 1)
End Sub
Ce code (à l’initialisation du UserForm) sélectionne la dernière cellule non vide sur la colonne « A » de la feuille « ACH », incrémente sa valeur, et par la suite transmet la valeur incrémentée à la TextBox « TB1 » du même user forme.
Exécuté séparément, ce code marche bien comme il faut, mais quand ce UserForm est appelé par un autre Userforme ça plante, et affiche le message d’erreur :
Erreur d’exécution 2147417848 - L’objet invoqué s’est déconnecté de ses clients.
D’après plusieurs essais, il m’est avéré que le problème se trouve au niveau de la ligne : Selection.AutoFill Destination:=Range("A" & i & ":A" & i + 1), Type:=xlFillDefault
Y a-t-il quelqu’un qui connait l’origine de ce problème ?
Merci d’avance
Windows / Chrome 109.0.0.0
- Problème avec .AutoFill
- Vba autofill ✓ - Forum VB / VBA
- Autofill sur sélection ✓ - Forum Excel
- Autofill et Range variable - Forum Programmation
- Excel vba autofill dynamic range ✓ - Forum Excel
- Fonction autofill sur samsung A52s 5G ✓ - Forum Samsung
1 réponse
Bonjour,
Si on utilise deux Userform, il faut utiliser des variables Public et vu que les Userform utilise Private, la liaison de tes Userform n'est pas faite.
Je vous conseille de recuperer le l'adresse de la reference Selection dans une cellule.
Exemple:
'Userform1
Range("D100") = Selection.address
Range("D101") = i
'Userform2 qui fait appel à la valeur
range(Range("D100")).AutoFill Destination:=Range("A" & range("D101") & ":A" & range("D101") + 1), Type:=xlFillDefault
Je ne sais pas si vous avez compris