0

ユーザーが選択したときに、保存された値を入力したいフォームに 8 つのコンボボックスがあります。

私が抱えている問題は、コードはすべて機能しますが、最初のコンボボックスのみが実際に更新されることです-サブを2回呼び出して(つまり、ユーザーがコマンドボタンをもう一度クリックするだけ)、すべてのコンボボックスが完全に読み込まれない限り。

これは複雑なコードではありませんが (まったく)、明らかに何かが欠けています。サブが 2 回目に実行されたときにコンボボックスがすべて更新され、最初に実行されなかった理由がわかりません。何か案は?

Dim loadlimit
Dim loadrow
Dim loadprev As Boolean
Dim l(8) As String
Dim i

i = 1

loadrow = 1
loadprev = False
loadlimit = lastrow(Sheet19)


Do Until loadrow > loadlimit
    If Cells(loadrow, 1).Value = geogselect.selectedind.Value Then
        loadprev = True
        l(1) = Cells(loadrow, 2).Value
        l(2) = Cells(loadrow, 3).Value
        l(3) = Cells(loadrow, 4).Value
        l(4) = Cells(loadrow, 5).Value
        l(5) = Cells(loadrow, 6).Value
        l(6) = Cells(loadrow, 7).Value
        l(7) = Cells(loadrow, 8).Value
        l(8) = Cells(loadrow, 9).Value
        geogselect.ComboBox1.Text = l(1)
        geogselect.ComboBox2.Text = l(2)
        geogselect.ComboBox3.Text = l(3)
        geogselect.ComboBox4.Text = l(4)
        geogselect.ComboBox5.Text = l(5)
        geogselect.ComboBox6.Text = l(6)
        geogselect.ComboBox7.Text = l(7)
        geogselect.ComboBox8.Text = l(8)
    End If
    loadrow = loadrow + 1
Loop

よろしくお願いします!

4

1 に答える 1

1

各コンボボックスを更新する前にExcelにsetFocusを指示することで解決しました。

于 2013-08-06T07:12:53.123 に答える