
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で質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) Vba 電卓 一文字消すボタン 3 2022/05/04 13:40
- Access(アクセス) アクセス 意図せずサブプロシージャを移動してしまうのを止めたい 1 2022/09/02 09:19
- Visual Basic(VBA) visual basic初心者です。 visual studioで電卓を作成しています。 実行時にテ 1 2023/02/08 00:18
- 扇風機・冷風機・サーキュレーター スマートプラグで最近の扇風機は操作できない? 5 2022/11/04 13:37
- Excel(エクセル) Libreoffice calcで人名を取り消し線を入れたい。 2 2022/09/10 15:27
- Access(アクセス) Access IF文でテーブルに存在しない場合の処理について 2 2022/10/10 18:09
- 輸入車 BMWのアイドリングストップ機能について 2016年製のアクティブツアラーです。(中古車購入) 標準 3 2022/11/17 08:08
- Visual Basic(VBA) ExcelVBAでユーザーフォームでテキストボックスなどからセルに連続して入力するコーディングの際の 2 2022/06/29 22:51
- Windows Me・NT・2000 PCのサインインについて教えてください。 現在NECのLAVIEのパソコンを使っています。普段は、キ 1 2022/12/30 22:28
- Visual Basic(VBA) VBA active sheetをPDF化して指定フォルダに保存 1 2022/07/07 11:27
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Excelシート上のマクロを登録し...
-
UPS警告音を止めたい
-
Excelで、ボタンにコメントをつ...
-
マクロを登録しているボタンが...
-
エクセルの画面にユーザーフォ...
-
Excel ラジオボタンのリセット...
-
オブジェクト名をVBAで指定...
-
入力済み、選択したセルに連動...
-
【Excel VBA】マクロボタンを表...
-
フォームコントロールから作っ...
-
エクセルでマクロボタンを押す...
-
コンボボックスウィザードが出...
-
複数シートのボタンに同一の動...
-
【Excel】難しいのですが、献立...
-
Accessについてです。
-
ユーザーフォームをショートカ...
-
日報の休日ボタン(トグルボタ...
-
VBAでクリアボタンのみ残してシ...
-
エクセルで、オプションボタン...
-
EXCELの塗りつぶしのボタ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excelシート上のマクロを登録し...
-
【Excel VBA】マクロボタンを表...
-
UPS警告音を止めたい
-
エクセルの画面にユーザーフォ...
-
マクロを登録しているボタンが...
-
EXCELのマクロが 実行時エラー5...
-
複数シートのボタンに同一の動...
-
入力済み、選択したセルに連動...
-
フォームコントロールから作っ...
-
Excelで、ボタンにコメントをつ...
-
Excel ラジオボタンのリセット...
-
エクセルで、オプションボタン...
-
マクロで作ったボタンのサイズ...
-
オブジェクト名をVBAで指定...
-
エクセルでマクロボタンを押す...
-
Accessのフォームでタブの色
-
excel スクロールしても常にボ...
-
ユーザーフォームをショートカ...
-
EXCELの塗りつぶしのボタ...
-
パナソニックKX-PW22CLHの電話...
おすすめ情報