2016-04-08 7 views
0

私は1つのテキストボックスを持つuserformを持っています。私のワークシートにはいくつかのテーブルがあります。私が望むのは、私がuserformを実行して、その中にテーブルのテーブルを入力するときです。submitを押すと、そのテーブルの名前がテキストボックスに入力され、そのテーブルのセルが選択されます。これまで私は初心者ですので、このコードを書いています。名前がテキストボックスにリストされているテーブルを選択するコード

Private Sub CommandButton2_Click() 

'Unprotect the Worksheet 
Sheets("Control Heads").Unprotect Password:="google" 

Dim ws1 As Worksheet, tbl As ListObjects, row As ListRow 

Set ws1 = Sheets("Control Heads") 
Set tbl = ws1.ListObjects("Me.TextBox2.Value") 
Set row = tbl.ListRows.Add 

End Sub 

コードをよく読んで、間違っている箇所を教えてください。あなたが設定され `worksheet`をつもりなら

おかげ

+0

、同様ワークブックで修飾...と、すべてのシートのためにそれを行いますか?そして、テーブルを選択するだけのコードがあるのは何ですか? – findwindow

+0

基本的には、特定のテーブルを選択した後、そのテーブルの一番下に行を追加してその中にエントリを配置したいと思います。 –

+0

シートを 'set ws1 = nameOfBookHere.Sheets(" Control Heads ")'のようなワークブックで修飾したいとします。 'set'の使い方を見てください。 'Me.TextBox2'の値を変数に格納して代わりに使用することを検討してください。 – findwindow

答えて

0
Private Sub CommandButton2_Click() 

'Unprotect the Worksheet 
Sheets("Control Heads").Unprotect Password:="google" 

Dim ws1 As Worksheet, tbl As ListObject, row As ListRow 
'tbl should be dim as ListObject, not ListObjects 

Set ws1 = Sheets("Control Heads") 
Set tbl = ws1.ListObjects(Me.TextBox2.Value) '<-- no quotation mark 
Set row = tbl.ListRows.Add 

End Sub 
+0

エラー "タイプの不一致" :( –

+0

を使用してください。 'me.textbox2.text'を試してください – Rosetta

+0

私はそれも試しましたが、同じエラー.... –

関連する問題