シートが「回答フォーム」と「用語」と言うのがあります。
(1)「回答フォーム」シートに"入力"ボンタをクリックすると「用語」のシートに入力される。
(2)回答フォーム」シートに"検索"ボンタをクリックすると「用語」のシートからフォームへ表示される。
用語のシートに項目は、A列から、ナンバー、検索、フリガナ、用途、用語、意味とあります。
TextBox1に用語、TextBox2に用途、TextBox3に意味
とあります。
(1)には
Private Sub 入力_Click()
Sheets("用語").ActiveSheet・・・ここがエラーになります。
「オブジェクトはこのプロパティまたはメソッドをサポートしていません。」
行 = ActiveCell.Row
列 = ActiveCell.Column
Cells(行, 列) = UserForm1.TextBox1.Value
Cells(行, 列 + 1) =UserForm1.TextBox2.Value
Cells(行, 列 + 2)=UerForm1.TextBox3.Value
UserForm1.TextBox1.SetFocus
Cells(行 + 1, 列).Select
End Sub
(2)には
Private Sub CommandButton1_Click()
Set sh1 = bk.Worksheets("回答フォーム")
Set sh5 = bk.Worksheets("用語")
cnt1 = 2
UserForm1.TextBox1.Value・・・・ここのVALUEがエラーになります。
「コンパイルエラー プロパティの使い方が不正です。」
ActiveCell.FormulaR1C1 = "=MATCH(RC[-1],用語!C[-5],0)"
n = ActiveCell.Value
'用語
sh5.Cells(n, 2).Value = sh1.TextBox1.Value
'意味
sh5.Cells(n, 3).Value = sh1.TextBox3.Value
'用途
sh5.Cells(n, 4).Value = sh1.TextBox2.Value
End Sub
申し訳ないですがよろしくお願い致します。
No.1ベストアンサー
- 回答日時:
>Sheets("用語").ActiveSheet
ActiveSheetもSheets("用語")も、シートを示しているので、エラーになるのは当たり前。
Sheets("用語").ActivateやSheets("用語").Select
なら問題無いでしょう。
>UserForm1.TextBox1.Value
記述はこれだけですか?
「UserForm1.TextBox1」の値(Value)を参照しているのに、値に何かを格納したり取出す事をしていないためではないですか?
UserForm1.TextBox1.Value = "A"
変数 = UserForm1.TextBox1.Value
この回答への補足
(1)を
Private Sub 入力_Click()
Sheets("用語").Select
行 = ActiveCell.Row
列 = ActiveCell.Column
Cells(行, 列) = UserForm1.TextBox1.Value
Cells(行, 列 + 1) = UserForm1.TextBox2.Value
Cells(行, 列 + 2) = UserForm1.TextBox3.Value
UserForm1.TextBox1.SetFocus
Cells(行 + 1, 列).Select
End Sub
に変更しました。
エラーはでなくなりましたが、用語シートの
セルの位置を探しにいかずに
アクティブセルから入力さてしまいます。
又(2)を
Private Sub CommandButton1_Click()
Set sh1 = bk.Worksheets("回答フォーム")・・・・*
Set sh5 = bk.Worksheets("用語")
cnt1 = 2
UserForm1.TextBox1.Value = "A"
A = UserForm1.TextBox1.Value
'用語
sh5.Cells(n, 2).Value = sh1.TextBox1.Value
'意味
sh5.Cells(n, 3).Value = sh1.TextBox3.Value
'用途
sh5.Cells(n, 4).Value = sh1.TextBox2.Value
End Sub
に変更しました。
*が黄色になります。
何度もすみません。
(1)の方は解決しました。
Private Sub 入力_Click()
Sheets("用語").Select '入力するシートを選ぶ
Range("B65536").End(xlUp).Offset(1).Select '空白のセルを選ぶ
行 = ActiveCell.Row 'アクティブセルから下へ
列 = ActiveCell.Column
Cells(行, 列) = UserForm1.TextBox1.Value
Cells(行, 列 + 1) = UserForm1.TextBox2.Value
Cells(行, 列 + 2) = UserForm1.TextBox3.Value
UserForm1.TextBox1.SetFocus
Cells(行 + 1, 列).Select
'次の入力のためテキストボックスを空白にする
TextBox1.Value = ""
TextBox2.Value = ""
TextBox3.Value = ""
Sheets("回答フォーム").Select
End Sub
ありがとうございました。
(2)の方はもう少し勉強してみます。
ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) VBA Userformで一部別シートに転記がしたいのですが 2 2023/05/24 13:08
- Visual Basic(VBA) 【VBA】特定のワードが入っている行全体を塗りつぶしたい 4 2022/04/20 15:22
- Visual Basic(VBA) Excel VBA ユーザーフォーム1のコンボボックスに別ブックの値を反映させたいです。 6 2023/03/21 16:12
- Visual Basic(VBA) いつもお世話になっております、VBAで教えて頂きたいのですが 2 2022/05/05 22:20
- Visual Basic(VBA) 検索のユーザーフォームの表示について 1 2023/03/27 23:31
- Visual Basic(VBA) VBA 重複チェック後に値をワークシートに転記する方法を教えてください。 1 2023/03/19 12:43
- Visual Basic(VBA) VBAで質問ですが、皆さんはどの様に導き出しているのでしょうか? 6 2022/05/03 21:53
- Visual Basic(VBA) ユーザーフォームの書き出しで追加のご相談 ユーザーフォームの値をシートに書き出す際、コードが表示され 2 2022/08/05 10:58
- Visual Basic(VBA) VBAコードが作動せず、どこに問題があるのか教えて下さい。 3 2023/06/13 13:20
- Excel(エクセル) なぜExit Subがあるのかわかりません 4 2023/02/19 12:34
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
別のシートから値を取得するとき
-
VBAの天才来てください
-
【ExcelVBA】全シートのセルの...
-
ユーザーフォームに入力したデ...
-
エクセルのマクロでアクティブ...
-
VBA 存在しないシートを選...
-
同じ作業を複数のシートに実行...
-
ExcelのVBAのマクロで他のシー...
-
エクセルのシート名変更で重複...
-
【VBA】シート名に特定文字が入...
-
【VBA】色のついたシート名を取得
-
ExcelVBA:複数の特定のグラフ...
-
ExcelVBA シート名を複数セルか...
-
XL:BeforeDoubleClickが動かない
-
VBAを用いて繰り返し自動的...
-
excelのマクロで該当処理できな...
-
VBA ユーザーフォーム上のチェ...
-
Excel マクロについての相談
-
特定の文字を含むシートだけマ...
-
エクセル・マクロ シートの非...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
別のシートから値を取得するとき
-
ユーザーフォームに入力したデ...
-
Excelマクロのエラーを解決した...
-
excelのマクロで該当処理できな...
-
同じ作業を複数のシートに実行...
-
ExcelVBA シート名を複数セルか...
-
【ExcelVBA】全シートのセルの...
-
Excel マクロについての相談
-
VBA 存在しないシートを選...
-
実行時エラー'1004': WorkSheet...
-
特定の文字を含むシートだけマ...
-
ExcelのVBAのマクロで他のシー...
-
ブック名、シート名を他のモジ...
-
XL:BeforeDoubleClickが動かない
-
VBA 複数の各シートに行を追加...
-
エクセルのシート名変更で重複...
-
【Excel VBA】Worksheets().Act...
-
シートが保護されている状態で...
-
Excel VBA 複数行を数の分だけ...
-
for 文の 繰り返し処理に使える...
おすすめ情報