
Excel VB (Excel 2007) の質問
Sheet1のセルD1、D2、D3に文字が入力されています。
そして同じシート上の任意の場所にテキストボックスが配置されています。
テキストボックスには"テキスト ボックス 1"、"テキスト ボックス 2"、"テキスト ボックス 3"と名前がつけられています。
セルD1の値を"テキスト ボックス 1"に複写、セルD2の値を"テキスト ボックス 2"に、セルD3の値を"テキスト ボックス 3"に
複写したいのですがどのようにすればいいのでしょうか。
インターネットのQ&Aで調べましたが同じような質問でも難しすぎて理解できません。
例えば以下のように簡単にできないでしょうか。
D1の値を"テキスト ボックス 1"に複写する場合
Range("D1").Select
Selection.Copy
ActiveSheet.Text."テキスト ボックス 1".Activate 'テキストボックスを選択(アクティブ)する記述が解りません。
ActiveSheet.Paste ’選択したテキストボックスに貼り付ける方法もわかりません。
勿論上記の記述ではうまくいきません。
VB初心者でお手数をおかけしますがよろしくお願いします。
No.2ベストアンサー
- 回答日時:
テキストボックスにセルの値を入れるのだけならマクロは必要はありません。
【操作手順】
・テキストボックスス「テキスト ボックス 1」を選択する。
・数式バーで「=D1」を入力して【Enter】キーを押す。
以上を"テキスト ボックス 2"、"テキスト ボックス 3"を同様に行う。
ネットでも色々説明しています。以下は手順を絵的に説明しています。
http://www.bayclotho.jp/blog/archives/907
No.3
- 回答日時:
>テキスト ボックス 1"に複写
ここに、質問者が、エクセルのことがよく判ってない点が在るようだ。
テキストボックス=テキストの値だけを保持できる。リッチテキストのテキストボックスなんていうのもあるが、別として。
一方
エクセルのセル=セルの値、表示形式、文字色などの書式、コメント、関数式、など重畳的な仕組みになっている。このことが理解できてないのでは。
そして複写というのは後者を総体的に移すことをねっらって言う言葉。
だから本件では代入というべきなんだ。
ーーー
一部の図形で数式バー部に=A1などと入れて図形のテキストに出来るものもあるが、その話ではなかろう。
普通には、エクセルVBAでは
Sub test01()
Worksheets("Sheet1").TextBox1 = Range("A1")
End Sub
を実行する。
エクセルVBAでは2つあって、上記はシートにテキストボックスを貼り付けた場合である。
Worksheets("Sheet1").を忘れるな。
もうひとつはユーザーフォーム上にテキストボックスを貼り付ける場合で
Private Sub UserForm_Click()
UserForm1.TextBox1 = Range("A1")
End Sub
このイベントは不自然ともいえるが。
この2つの区別の質問者には出来てないのでは。
ーーー
それとテキストボックスの値をテキストボックスの入力分から拾うキッカケは、コマンドボタンのクリックなどでとらざるを得ない
入力キーストローク中もテキストに出していく考えもあろうが。
Private Sub CommandButton1_Click()
UserForm1.TextBox1 = Range("A1")
End Sub
シート上にコマンドボタンがあるなら、Sheet1のシートモジュールに
Private Sub CommandButton1_Click()
Worksheets("Sheet1").TextBox1 = Range("A1")
End Sub
こう言うことも質問には書いてない。情況の説明(特にイベントとの絡み)が全的になされていない。
ーー
まだまだエクセルとVBAを経験する必要がありそう。
ーー
どちらかというと、シートのセルの値をテキストボックスに持っていく場合は、頻用されないと思うが、どういった使い方なのかな。
逆のためのコントロールで使われるのが多いと思うので。またテキストボックスはシートのセルで代用することも出来なくは無いから。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
VBAのテキストボックスに文字列を貼り付ける方法
Access(アクセス)
-
VBA フォームのテキストボックスにセルの値を表示させたいが改行していたら改行もあわせて表示させたい
Excel(エクセル)
-
任意で選択したセルをテキストボックスに表示
Excel(エクセル)
-
-
4
フォームのテキストボックスの値をコピーしたい
Excel(エクセル)
-
5
VBA 複数のセルの値をテキストボックスに表示する
Excel(エクセル)
-
6
セルの内容をテキストボックスに移動したい
Excel(エクセル)
-
7
ExcelVBAのユーザーフォームの中に線を引きたい
Visual Basic(VBA)
-
8
エクセルVBAでクリップボード内容をクリア
その他(プログラミング・Web制作)
-
9
エクセルVBAでテキストボックスに入力があった場合のみ、ワークシートに転記したい
Visual Basic(VBA)
-
10
エクセル ユーザーフォームにオートシェープ(図形)を貼り付けるこは可能なのでしょうか?
Excel(エクセル)
-
11
VBAでテキストボックス内の編集をする方法
Visual Basic(VBA)
-
12
ユーザーフォームに別シートからデータを反映させたい。
Visual Basic(VBA)
-
13
VBAでブックを非表示で開いて処理して閉じる方法
Excel(エクセル)
-
14
EXCEL マクロ クリップボードクリア方法
Excel(エクセル)
-
15
VBA 数値を文字列として貼付したい
Excel(エクセル)
-
16
Excel_マクロ_現在開いているシートにマクロを実行したいです
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Excel VBA セルの値がおかしいです
-
VBA セル間のリンク修正につい...
-
VBAでCOPYを繰り返すと、処理が...
-
VBAから書き込んだ条件付き初期...
-
WindowsのOutlook を VBA から...
-
マクロの記録を使用したマクロ...
-
vbsでのwebフォームへの入力制限?
-
ダブルクリックで貼り付けた画...
-
エクエルのVBAコードについて教...
-
ExcelのVBAコードについて教え...
-
vbs ブック共有を解除
-
VBAでFOR NEXT分を Application...
-
Excelのマクロについて教えてく...
-
Vba WorkBooks.Openについて教...
-
Vba 型が一致しません(エラー1...
-
【ExcelVBA】5万行以上のデー...
-
VBAでセルの書式を変えずに文字...
-
[Excel VBA]特定の条件で文字を...
-
【VBA】値を変更しながら連続で...
-
vba textboxへの入力について教...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
変数に256文字以上のテキストを...
-
テキストボックスの中身をリセ...
-
テキストボックスにセルの値を...
-
テキストエリア内の文字列にリ...
-
VB6.0 でメニューを作りたいん...
-
スキャン後、追記したいのですが、
-
ホームぺージ制作で間違って重...
-
別のアプリケーションのテキス...
-
エクセルのオートシェイプをマ...
-
HTMLのtextbox類に文字を残す
-
全てのテキストボックスをセル...
-
RPG(AS400)の本、サイトってあ...
-
VB.NETで数十行のプログラムを...
-
jQueryで入力テキスト付きのモ...
-
エクセルの図形挿入のVBAにて
-
HTML版とは・・
-
POIでのテキストボックス作成に...
-
フォームのテキストの入力数字...
-
テキストエリアにあわせた文字...
-
VBAからPDFのテキストフィールド
おすすめ情報