私はかなり理解していません...問題を再現しようとしましたが、私はprobsがありませんでした。次のコードを使用しました
Private Sub CommandBut_Click()
Dim cnn As ADODB.Connection
Dim rs As ADODB.Recordset
Dim sqls As String
Dim myRec As Integer
Set rs = New ADODB.Recordset
Set cnn = New ADODB.Connection
cnn.ConnectionString = "UID=***;PWD=***;DSN=***;"
sqls = "select data1, data2 from someRandomTable where data1 = '" & textbox1 & '" and data2 = '" & textbox2 & '"
rs.Open sqls, cnn.ConnectionString, adOpenStatic
Dim z As Integer
z = 1
If rs.RecordCount > 0 Then
rs.MoveFirst
Do While Not rs.EOF
Cells(z, 1).Value = rs.Fields(0).Value
Cells(z, 2).Value = rs.Fields(1).Value
z = z + 1
End With
rs.MoveNext
Loop
Else
MsgBox "nothing found", vbCritical
End If
Set rs = Nothing
Set cnn = Nothing
End Sub
TextBox1,2のControlSourcePropertyをsheet1!A1とB1に設定しました。
CommandBut_Clickはテキストボックスの値を読み取ってからSQLで上書きし、textbox1と2の値を更新します。
だけの推測ができますが、コントロールソースプロパティを再割り当てしようとしたがありますか?私。それを取り出して再適用してください。 #MightWork – markblandford
これはうまくいきますが、100個以上のテキストボックスが別のセルにバインドされているため、コードをすべて更新する必要はありません。 – NiMuSi