Excel 填充用户表单标签

Excel 填充用户表单标签,excel,userform,vba,Excel,Userform,Vba,在这种情况下,我需要根据所选语言填充userform上的标签 第2页包含C列中的标签名称列表,从第9行开始,相邻的D到F列包含每个标签应基于所选语言的标题文本。选择一种语言会用一个表示要使用的列的数字填充单元格C2,即第4、5或6列(languageCol)。我尝试了以下代码的各种迭代,但无法填充标签 Dim Cell As Range Dim l As Integer Dim languageCol As Integer languageCol = Sheet2.Range("C2") F

在这种情况下,我需要根据所选语言填充userform上的标签

第2页包含C列中的标签名称列表,从第9行开始,相邻的D到F列包含每个标签应基于所选语言的标题文本。选择一种语言会用一个表示要使用的列的数字填充单元格C2,即第4、5或6列(languageCol)。我尝试了以下代码的各种迭代,但无法填充标签

Dim Cell As Range
Dim l As Integer
Dim languageCol As Integer

languageCol = Sheet2.Range("C2")

For Each Cell In Sheet2.Range("C9", Sheet2.Cells(Rows.Count, "C").End(xlUp)).Cells
    For l = 1 To 5
        Me.Controls("frm_Details" & l).Caption = Cell.Offset(, languageCol).Text
    Next l
Next Cell

解决了。问题是我如何定义表单上每个控件的名称。下面的解决方案

For Each Cell In Sheet2.Range("C9", Sheet2.Cells(Rows.Count, "C").End(xlUp)).Cells
    Me.Controls(Cell.Text).Caption = Cell.Offset(, languageCol).Text
Next Cell

您是否遇到错误,或者问题是否以其他方式表现出来?未报告任何错误,但标签未在
l
循环中填充,请在此处添加一行:
Debug.Print Cell.Offset(,languageCol).Address
以检查查找文本的位置。