エクセル97です。
ワークシート上にテキストボックス、コンボボックス、オプションボタン、ラベルが配置されています。
すべて、ツールバーのフォームから出したものです。
これら全部の数をもとめるには
Sub TEST()
Dim x As Integer
x = ActiveSheet.Shape.Count
MsgBox x
End Sub
これで出てきますし、テキストボックスならshapesをTextboxes、ラベルならLabelsに変えればいいのですが、オプションボタンやコンボボックスの場合、どう変えれば良いのかわかりません。教えてください。特にオプションボタンは数が多くて困っています。
No.2ベストアンサー
- 回答日時:
#1です。
すみません。ワークシートに普通の図形があると、エラーになりますね。修正しました。
Sub test2()
For Each obj In ActiveSheet.Shapes
If obj.Type = msoFormControl Then
Select Case obj.FormControlType
Case xlButtonControl
b = b + 1
Case xlCheckBox
c = c + 1
Case xlDropDown
g = g + 1
Case xlOptionButton
o = o + 1
End Select
End If
Next obj
MsgBox "ボタン " & b & Chr(13) & _
"チェックボックス " & c & Chr(13) & _
"コンボ(ドロップダウン)ボックス " & g & Chr(13) & _
"オプションボタン " & o
End Sub
No.3
- 回答日時:
オプションボタンは、
x = ActiveSheet.OptionButtons.Count
コンボボックスは、
x = ActiveSheet.DropDowns.Count
で如何でしょうか。
これらは、隠しオブジェクトですね。
なお、提示のコードで
x = ActiveSheet.Shape.Count は、
x = ActiveSheet.Shapes.Count でないでしょうか。
> 提示のコードで
> x = ActiveSheet.Shape.Count は、
> x = ActiveSheet.Shapes.Count でないでしょうか。
すみません、その通りです。
ありがとうございました。
No.1
- 回答日時:
こんなかんじでしょうか。
詳しくは、FormControlTypeのヘルプをご覧ください。
Sub test()
For Each obj In ActiveSheet.Shapes
Select Case obj.FormControlType
Case xlButtonControl
b = b + 1
Case xlCheckBox
c = c + 1
Case xlDropDown
g = g + 1
Case xlOptionButton
o = o + 1
End Select
Next obj
MsgBox "ボタン " & b & Chr(13) & _
"チェックボックス " & c & Chr(13) & _
"コンボ(ドロップダウン)ボックス " & g & Chr(13) & _
"オプションボタン " & o
End Sub
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) ユーザーフォーム「frm_基本❶」を立ち上げると新規で入力する行数を右下のNoとして表示しています。 1 2023/03/16 19:02
- Access(アクセス) チェックボックスにチェックが入った後の挙動 1 2022/08/21 12:39
- Visual Basic(VBA) ユーザーフォームの書き出しで追加のご相談 ユーザーフォームの値をシートに書き出す際、コードが表示され 2 2022/08/05 10:58
- Excel(エクセル) 【マクロ】スクショ印刷がうまく動かない件 5 2022/12/06 17:37
- Visual Basic(VBA) ①ExcelVBAでカレンダーを作り、別のユザーフォームで日付を入力したいのですがエラーになります。 1 2023/02/17 18:39
- Access(アクセス) Access IF文でテーブルに存在しない場合の処理について 2 2022/10/10 18:09
- Access(アクセス) Accessにインポートした複数のテーブルを表示させる方法が分かりません。 1 2023/01/30 20:22
- Excel(エクセル) エクセルシート中の全角英数字を半角に変換したい 4 2022/07/07 13:14
- Visual Basic(VBA) VBA 画面上のカーソルに文字数字を入力するコードを教えて下さい 1 2022/10/30 10:31
- Visual Basic(VBA) Powerpointでランダムな数字の結果を表示するマクロ 2 2023/08/04 10:04
このQ&Aを見た人はこんなQ&Aも見ています
-
性格の違いは生まれた順番で決まる?長男長女・中間子・末っ子・一人っ子の性格の傾向
同じ環境で生まれ育っても、生まれ順で性格は違うものなのだろうか。家庭教育研究家の田宮由美さんに教えてもらった。
-
コマンドボタンがあるかどうかを取得するには?
PowerPoint(パワーポイント)
-
エクセルVBAでOptionButtonのオンオフ取得
Excel(エクセル)
-
VBAでエクセルシートを更新(リフレッシュ)する方法を教えて下さい。
Excel(エクセル)
-
-
4
押したボタンの位置取得(共通のマクロ)
Excel(エクセル)
-
5
VBAで保存しないで閉じると空のBookが残る
Excel(エクセル)
-
6
ユーザーフォームを表示中にシートの操作をさせるには
Excel(エクセル)
-
7
Excelマクロでオプションボタンの名前の変更をしたい
Excel(エクセル)
-
8
EXCEL VBAで全選択範囲の解除
Excel(エクセル)
-
9
エクセルVBA オプションボタンのチェックを外したい
Excel(エクセル)
-
10
VBA シートのボタン名を変更したい
Visual Basic(VBA)
-
11
VBA:ユーザーフォームのマルチページに色を付けたい。
Word(ワード)
-
12
エクセルVBAでmeに相当するものは?
Excel(エクセル)
-
13
EXCEL VBAのユーザーフォームに引数を渡す方法について
Excel(エクセル)
-
14
VBA 変数名に変数を使用したい。
Visual Basic(VBA)
-
15
エクセルVBAで5行目からオートフィルタモードに設定したいたい
Excel(エクセル)
-
16
エクセル・VBA CheckBoxのオブジェクト名に変数を使うことは可能でしょうか?
Excel(エクセル)
-
17
エクセルのラベルの値(文字列)を垂直方向で中央揃えにするには?
Excel(エクセル)
-
18
VBA(エクセル)のユーザーフォームの固定
Visual Basic(VBA)
-
19
VBA(エクセル)で自動的にボタンをクリックさせるには
その他(プログラミング・Web制作)
-
20
エクセル ユーザーフォームにオートシェープ(図形)を貼り付けるこは可能なのでしょうか?
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
UPS警告音を止めたい
-
Excelシート上のマクロを登録し...
-
Excel ラジオボタンのリセット...
-
エクセルの画面にユーザーフォ...
-
エクセルで、オプションボタン...
-
Accessのフォームでタブの色
-
ボタンを画像で作るか、CSSでデ...
-
EXCELのマクロが 実行時エラー5...
-
エクセルでマクロボタンを押す...
-
オブジェクト名をVBAで指定...
-
【Excel VBA】マクロボタンを表...
-
複数CSVファイルを一括インポート
-
エクセルでグループボックスを...
-
Access VBAでボタンの背景色を...
-
VBAでオプションボタンなどそれ...
-
ペアーズを利用しようと メッセ...
-
Accessについてです。
-
入力済み、選択したセルに連動...
-
マクロ初心者です。 msgboxのre...
-
excel スクロールしても常にボ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excelシート上のマクロを登録し...
-
エクセルの画面にユーザーフォ...
-
UPS警告音を止めたい
-
エクセルで、オプションボタン...
-
マクロで作ったボタンのサイズ...
-
ユーザーフォームをショートカ...
-
Excel ラジオボタンのリセット...
-
複数シートのボタンに同一の動...
-
Excelで、ボタンにコメントをつ...
-
【Excel VBA】マクロボタンを表...
-
マクロ初心者です。 msgboxのre...
-
入力済み、選択したセルに連動...
-
Accessのフォームでタブの色
-
フォームコントロールから作っ...
-
EXCELのマクロが 実行時エラー5...
-
EXCELの塗りつぶしのボタ...
-
excel スクロールしても常にボ...
-
コンボボックスウィザードが出...
-
Access VBAでボタンの背景色を...
-
エクセルでマクロボタンを押す...
おすすめ情報