Элементы управления в текстовом поле пользовательской формы Excel vba - PullRequest
0 голосов
/ 07 февраля 2019

У меня есть многостраничная пользовательская форма, и я не могу получить данные, которые обновляются в форме для обновления в Excel.У меня есть код, который обновляет только строку 2, независимо от того, какую строку я редактирую в форме.Вот код, который я использую.

Dim currentrow As Long

Private Sub btnClose_Click()
  Unload Me
End Sub

Private Sub frmDrgReg_Initialize()
        Dim ws As Worksheet
        Set ws = Worksheets(1)
        Call resetForm

        currentrow = 2
        Me.txtRev = Cells(currentrow, 10)
        Me.txtScale = Cells(currentrow, 11)
        Me.txtProjDesc = Cells(currentrow, 12)
       Me.txtFacDesc = Cells(currentrow, 13)
       Me.txtItemDesc = Cells(currentrow, 14)
       Me.txtType = Cells(currentrow, 15)


End Sub

Private Sub btnApply_Click()
       answer = MsgBox("you are about to apply the changes", vbYesNo + vbQuestion, "Apply Changes")
       If answer = vbYes Then
       currentrow = 2
       Cells(currentrow, 10) = Me.txtRev.Text
       Cells(currentrow, 11) = Me.txtScale.Text
       Cells(currentrow, 12) = txtProjDesc.Text
       Cells(currentrow, 13) = txtFacDesc.Text
       Cells(currentrow, 14) = txtItemDesc.Text
       Cells(currentrow, 15) = txtType.Text
       End If
End Sub

Private Sub ComboBox1_DropButtonClick()
        Dim i As Long, LastRow As Long
        LastRow = Sheets(1).Range("H" & Rows.Count).End(xlUp).Row
        If Me.ComboBox1.ListCount = 0 Then
        For i = 2 To LastRow
        Me.ComboBox1.AddItem Sheets(1).Cells(i, "H").Value
        Next i
        End If

End Sub

В Sub btnApply_Click() как я могу использовать цикл For Each, аналогичный тому, который я использовал в моей подпрограмме resetForm

Public Sub resetForm()
        Dim ctl As Control
        For Each ctl In frmDrgReg.Controls
                If TypeName(ctl) = "TextBox" Then
                        ctl Value = ""
                End If
        Next ctl

        frmDrgReg.ComboBox1.SetFocus
End Sub
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...