2017-03-01 4 views
0

Quelqu'un peut-il m'aider s'il vous plaît à corriger mon code que je ne peux pas faire mon bouton de mise à jour dans userform fonctionne. Voici mon code:Comment mettre à jour les données en utilisant vba excel

Private Sub CommandButton_update_Click() 
Dim cNum As Integer 
Dim x As Integer 
Dim nextrow As Range 

cNum = 7 
Set nextrow = Sheet1.Cells(Rows.Count, 3).End(xlUp).Offset(1, 0) 
For x = 1 To cNum 
nextrow = Me.Controls("TextBox" & x).Value 
Set nextrow = nextrow.Offset(0, 1) 
Next 
MsgBox "Sent" 
'Clear Control 
cNum = 7 
For x = 1 To cNum 
For x = 1 To cNum 
nextrow = Me.Controls("TextBox" & x).Value = "" 
Set nextrow = nextrow.Offset(0, 1) 
Next 

End Sub 
+0

Votre code est ** Uncompilable **, vous avez 2 x 'Pour x = 1 Pour cNum' et seulement 1' Next' –

+0

Juste pour clarifier, Vous avez un formulaire d'utilisateur avec 7 zones de texte que vous voulez mettre dans la colonne C de Sheet1, alors vous voulez effacer ces zones de texte sans décharger le formulaire d'utilisateur? –

Répondre

0

peut-être vous êtes après cette

Private Sub CommandButton_update_Click()  
    Dim cNum As Integer 
    Dim x As Integer 
    Dim nextrow As Long '<--| have nextrow store a row index, i.e. a Long value 

    cNum = 7 
    nextrow = Sheet1.cells(Sheet1.Rows.Count, 3).End(xlUp).Offset(1, 0).Row '<--| store row index of column "C" first empty cell after last not empty one 
    For x = 1 To cNum 
     Me.Controls("TextBox" & x).Value = nextrow '<--| set "current "TextBox value to nextrow 
     nextrow = nextrow + 1 '<--| update nextrow 
    Next 

    MsgBox "Sent" 

    'Clear Control 
    cNum = 7 
    For x = 1 To cNum 
     Me.Controls("TextBox" & x).Value = "" '<--| clear "current" TextBox 
    Next  
End Sub 
+0

@Janice, avez-vous passé au travers? – user3598756

+0

@Janice, avez-vous une chance de recevoir des commentaires de votre part? – user3598756