J'ai écrit le code suivant pour un bouton de commande pour ajouter le (texte) le contenu d'un UserForm à une plage dynamique existante (nommée) « MasterTable »:Excel VBA commande code du bouton ne reconnaît pas objet variable
Private Sub AddDev_Click()
Application.CutCopyMode = False
With Worksheets("Table").Range("MasterTable").ListObject.ListRows.Add
.Offset(1, 0).Value = NewDevRecord.NewCorp.Value
.Offset(1, 1).Value = NewDevRecord.NewAddr.Value
.Offset(1, 1).Value = NewDevRecord.NewFac.Value
End With
End Sub
Lorsque je remplis le pour et cliquez sur le bouton, il lance Error 91- Object Variable or With Block Variable Not Set
et met en surbrillance Worksheets("Table").Range("MasterTable")
en tant que délinquant. N'est-ce pas un moyen valable de référencer une gamme? Cela fonctionne dans mes modules de livre et de feuille vba - Les composants UserForm n'ont-ils pas accès? Qu'est-ce que je fais mal?
Je crois que lorsque vous appelez une plage nommée, vous pouvez juste utilisez 'With Range (" MasterTable ") ...' – BruceWayne