![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
No.3ベストアンサー
- 回答日時:
テキストボックスは図形を使っていましたよね。
コントロールツールボックスのテキストボックスなら簡単に操作できるのですが・・・まず、各シートのテキストボックスに共通の文字を持った名前をつけて下さい。
Sheet1ではmyText1_1、myText1_2・・・、Sheet2ではmyText2_1、myText2_2・・・の要領です。
下の例では名前の前6文字をVBAで判定に使っています。
やっていることはテキストボックスの座標を操作しているだけです。目で見える範囲や印刷等の範囲の外に出るように増分zoubunを適当に設定して下さい。(図形を見た目だけ消すのはたいへんです)
最初に動かすときは、「ボタンON」のプロパティのvisibleをfalseにしておきます。
「ボタンOFF」を押すと図形が消え、「ボタンOFF」が見えなくなり「ボタンON」が現れます。
「ボタンON」を押すと図形が現れ、「ボタンON」が消え「ボタンOFF」が現れます。
これは標準モジュールに貼り付けます。
Public Sub ON_OFF(FLG As Boolean)
Dim sht As Integer 'シートカウンタ
Dim shp As Shape '図形
Const zoubun = 500 '位置を変える大きさ
Dim fugo As Integer '符号
fugo = 1: If FLG = True Then fugo = -1
Application.ScreenUpdating = False
For sht = 1 To 3
Worksheets("Sheet" & sht).Activate
For Each shp In Worksheets("Sheet" & sht).Shapes
If Left(shp.Name, 6) = "myText" Then
shp.Top = shp.Top + zoubun * fugo
shp.Left = shp.Left + zoubun * fugo
End If
Next
Next
Worksheets("Sheet5").Activate
Application.ScreenUpdating = True
End Sub
シート5に貼り付けます
Private Sub cmdOff_Click()
cmdOff.Visible = False: cmdON.Visible = True: ON_OFF False
End Sub
Private Sub cmdON_Click()
cmdOff.Visible = True: cmdON.Visible = False: ON_OFF True
End Sub
nishi6さん!いつもありがとうございます。
今回は、一発成功!しました。VBAが少しづつ分かってきているような気がします。nishi6さんには、いつもお世話になりっぱなしですみません。本当にありがとうございます。
No.2
- 回答日時:
もしも、画面上で見えたり見えなくするというのではなく、本当に消したい場合は以下のようにしみてください。
(多分質問の意図は前述の方のやり方が回答になっていると思いましたが)
--ONの処理--
Sub ボタン1_Click()
Sheets("Sheet1").Select
ActiveSheet.OLEObjects.Add(ClassType:="Forms.TextBox.1", Link:=False,・・・・・その他設定)
(シート2・シート3も同様に)
End Sub
--OFFの処理--
Sub ボタン2_Click()
Sheets("Sheet1").Shapes("TextBox1").Delete
Sheets("Sheet2").Shapes("TextBox1").Delete
Sheets("Sheet3").Shapes("TextBox1").Delete
End Sub
この回答への補足
batu1さん!ありがとうございます。
早速やってみましたが、
ActiveSheet.OLEObjects.Add(ClassType:="Forms.TextBox.1",Link:=False,・・・・・その他設定)
がエラーになってしまいました。
OFFはうまくいました。
No.1
- 回答日時:
以下のようにします。
■コマンドボタンONの処理
Private Sub CommandButtonON_Click()
Sheet1.TextBox1.Visible = True
Sheet2.TextBox1.Visible = True
Sheet3.TextBox1.Visible = True
End Sub
■コマンドボタンOFFの処理
Private Sub CommandButtonOFF_Click()
Sheet1.TextBox1.Visible = False
Sheet2.TextBox1.Visible = False
Sheet3.TextBox1.Visible = False
End Sub
gould09さん!ありがとうございました。
ちょっとエラーが出てしまいましたが、意味は理解でき、何とかできました。
ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・ゆるやかでぃべーと タイムマシンを破壊すべきか。
- ・「I love you」 をかっこよく翻訳してみてください
- ・歩いた自慢大会
- ・許せない心理テスト
- ・字面がカッコいい英単語
- ・昔のあなたへのアドバイス
- ・かっこよく答えてください!!
- ・あなたが好きな本屋さんを教えてください
- ・スタッフと宿泊客が全員斜め上を行くホテルのレビュー
- ・【大喜利】【投稿~8/27】 こんなガソリンスタンド二度と来るか!なぜそう思った?
- ・これ何て呼びますか Part2
- ・人生で一番思い出に残ってる靴
- ・【お題】動物のキャッチフレーズ
- ・【お題】甲子園での思い出の残し方
- ・ゆるやかでぃべーと すべての高校生はアルバイトをするべきだ。
- ・「それ、メッセージ花火でわざわざ伝えること?」
- ・自分用のお土産
- ・人生で一番お金がなかったとき
- ・一番好きなみそ汁の具材は?
- ・泣きながら食べたご飯の思い出
- ・ちょっと先の未来クイズ第1問
- ・ゴリラ向け動画サイト「ウホウホ動画」にありがちなこと
- ・初めて自分の家と他人の家が違う、と意識した時
- ・単二電池
- ・チョコミントアイス
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
UPS警告音を止めたい
-
パナソニックKX-PW22CLHの電話...
-
Excelシート上のマクロを登録し...
-
複数シートのボタンに同一の動...
-
ユーザーフォームをショートカ...
-
EXCELの塗りつぶしのボタ...
-
ボタンを押しただけで発生する...
-
Excel ラジオボタンのリセット...
-
複数CSVファイルを一括インポート
-
エクセルで質問です。
-
マクロを登録しているボタンが...
-
Accessのフォームでタブの色
-
エクセルで、オプションボタン...
-
APEXをパソコンでしようとゲー...
-
EXCEL VBA マクロ 実行する度に...
-
VBA エンターキーでイベントに...
-
「PC Helpsoft Driver Updated...
-
【Excel】特定の文字を含むセル...
-
メルカリのメルカードで買い物...
-
お家デートをしててハグを長い...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excelシート上のマクロを登録し...
-
UPS警告音を止めたい
-
エクセルの画面にユーザーフォ...
-
【Excel VBA】マクロボタンを表...
-
ユーザーフォームをショートカ...
-
Excel ラジオボタンのリセット...
-
フォームコントロールから作っ...
-
エクセルで、オプションボタン...
-
Accessのフォームでタブの色
-
複数シートのボタンに同一の動...
-
マクロを登録しているボタンが...
-
Excelで、ボタンにコメントをつ...
-
マクロで作ったボタンのサイズ...
-
excel スクロールしても常にボ...
-
EXCELの塗りつぶしのボタ...
-
VBAでオプションボタンなどそれ...
-
EXCELのマクロが 実行時エラー5...
-
マクロ初心者です。 msgboxのre...
-
VBAでクリアボタンのみ残してシ...
-
Access VBAでボタンの背景色を...
おすすめ情報