Название должно дать четкое представление о проблеме, но я запускаю динамический именованный диапазон для использования в поле со списком в пользовательской форме. Когда я запускаю форму, значения отображаются так, как предполагалось. Когда я вызываю подпрограмму модуля с помощью командной кнопки, значения не отображаются, и я понятия не имею, почему.
Я вставлю весь код и выделю оскорбительные фрагменты ниже:
Private Sub btnGetGAToken_Click()
'--------------------------------
'Obtain API Token from Google Analytics (GA), indicate to user that token has been obtained and populate Account combobox
'with a unique list of accounts, which will in turn populate the Profile combobox with the profiles associated with the chosen
'account
'--------------------------------
Dim txtEmailField As String
Dim txtPasswordField As String
'Values written to sheet for use in UDFToken and UDFGetGAAcctData array formulas
Range("FieldEmail").Value = Me.txtEmailField.Text
Range("FieldPassword").Value = Me.txtPasswordField.Text
Range("GAToken").Calculate
With Me.lblGATokenResponseField
.Caption = Range("GAToken").Value
.ForeColor = RGB(2, 80, 0)
End With
Call FindUniqueAccountNames
cboAccountNamesComboBox.RowSource = Sheet1.Range("ListUniqueAccountNames").Address
End Sub
Private Sub cboAccountNamesComboBox_Change()
'Value written to sheet for use in the 'ListProfileNames' dynamic, named range
Range("ChosenAccount").Value = Me.cboAccountNamesComboBox.Value
With Me.cboProfileNamesComboBox
.Value = ""
.RowSource = Sheets("CodeMetaData").Range("ListProfileNames").Address
End With
End Sub
Динамический диапазон был создан с помощью менеджера имен и представлен ниже:
Именованный диапазон: "ListUniqueAccountNames" = OFFSET(CodeMetaData!$J$5,0,0,COUNTA(CodeMetaData!$J$5:$J$5000))
и для простоты использования код, который я использую для его запуска, приведен ниже:
cboAccountNamesComboBox.RowSource = Sheets("CodeMetaData").Range("ListUniqueAccountNames").Address
Подпрограмма, вызывающая пользовательскую форму, находится здесь:
Public Sub ShowReportSpecsForm()
Load frmReportSpecs
frmReportSpecs.Show
End Sub
Простите меня за публикацию такого большого количества кода, но я не уверен, что именно вызывает проблему - я все еще очень новичок с формами.
Любая помощь будет оценена. Спасибо.
Sheets("CodeMetaData").Range("ListUniqueAccountNames").Address
? - person JMax   schedule 25.07.2011