dポイントプレゼントキャンペーン実施中!

エクセルのセル内に入力した情報をテキストボックスに持っていく方法はテキストボックス内にセルのアドレスを入れれば出来ると分かりましたが、逆にテキストボックス内の情報をセルに持っていくやり方が良く分かりません。
インターネットで下記の様な情報があったのでやってみましたが、「End Sub」が無い、という様なエラーが出てうまくいきません。
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
<使用例 テキストボックスに入力された値をセルA1に代入する>
Private Sub TextBox1_Change()
Range("A1") = TextBox1.Value
End Sub
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
内容としては下記の様なものだと思っていますが正しいでしょうか?
(1)テキストボックスの名前を確認または希望する名前に変更
(2)開発、VBAでマクロを入力する
    Range("A1") が出力したいセル
    TextBox1が参照したいテキストボックスの名前

また、VBAで無く、コマンド操作で実施してマクロ記録とすることは出来ないのでしょうか?
以上、よろしくお願いいたします。

A 回答 (1件)

悩める柴太郎さんの認識で、正しいですよ。


でもダメだったということですよね?

テキストボックスをシートに貼っているにも関わらず、コードを
標準モジュールに書いているとかですかね。
プロジェクトウィンドウに、Sheet1等があると思います。
テキストボックスの貼ってあるシートにコードを移してみてください。

マクロ記録では、標準モジュールにコードが生成されます。
それを上記と同じ要領で Sheet1等に移す必要があります。
    • good
    • 0
この回答へのお礼

ママチャリさん
早々のご回答ありがとうございました。

とりあえず別のマクロを記録操作で作成して、その中身を書き換える様なこととかやってみましたが、うまくいきませんでした。

いろいろ調べていくうちに「ActiveX」とかいうのにたどり着いて出来る様になりました。

ママチャリさんは既にご存じのことと思いますが、私と同じ悩みを持っている人のために下記手順を記載します。

 開発/挿入/ActiveXコントロール/abc(テキストボックス) でテキストボックスを作成
 右クリックでプロパティを選択するとプロパティリストが出るので、その中の「LinkedCell」にテキストの内容を表示したいセル番地を入力(例:A1)
 これでテキストに入れた内容がセルに反映され、逆にセルに入れた内容がテキストにも反映されました。

 早速、仕事で使っているファイルに導入してみました。
 今まで毎回テキストから手作業で移しかえていたのが不要となり、楽々となりました。

 どうもありがとうございました。

お礼日時:2016/02/06 06:31

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています


このQ&Aを見た人がよく見るQ&A