У меня есть текстовое поле в моей пользовательской форме, которое имеет то же имя, что и заголовок метки без пробела.Например, текстовое поле будет называться «SampleName», а заголовок метки будет «Sample Name».При нажатии кнопки «Отправить» я хотел бы, чтобы данные вводились в рабочую книгу в соответствующем столбце, названном так же, как название и текстовое поле.Я не могу удалить пространство из заголовка столбца, так как оно требуется для импорта в другое программное обеспечение.Однако, когда я нажимаю "Отправить", он всегда возвращает ошибку времени выполнения, не в состоянии получить свойство соответствия.Когда я пытаюсь этот код при вводе Label.ctlname.Caption вручную, он работает нормально.Есть предложения?
Dim ssheet As Worksheet
Dim rngsource As Range
Set ssheet = ThisWorkbook.Sheets("Sheet1")
nr = ssheet.Cells(Rows.Count, 1).End(xlUp).Row + 1
With ssheet
Set rngsource = Range(Cells(1, 1), Cells(1, Range("A1").End(xlToRight).Column))
Dim ctl
Dim ctlname As String
For Each ctl In Me.Controls
If TypeOf ctl Is msforms.TextBox Then
ctlname = "Label" & ctl.Name & ".Caption"
.Cells(nr, Application.WorksheetFunction.Match(ctlname, rngsoruce, 0)) = ctl
ctl.Text = ""
End If
Next ctl
End With