
A 回答 (3件)
- 最新から表示
- 回答順に表示
No.3
- 回答日時:
#2です。
構造として
ユーザーフォーム -> マルチページ -> ページ -> 各コントロール
です。
UserForm1.MultiPage1を変更している場合、実際のオブジェクト名に変更
>ページを指定して
1ページのみ対象にするなら、
ページオブジェクト名で指定するのが良いかも
例:Page1のオブジェクト名をページ1にした場合(添付画像参照)
Dim Cntl As Control
Dim ans As String
'Page1のオブジェクト名をページ1にした場合
With UserForm1.MultiPage1
'すべてのコントロールを取得
For Each Cntl In .ページ1.Controls
' .Valueプロパティがないコントロールはエラーで飛ばす
On Error GoTo NG_value
If Cntl.Value = "" Then
ans = ans & .ページ1.Caption & vbCrLf & _
Cntl.Name & vbCrLf
End If
NG_value:
Next
End With
MsgBox (ans)
すべてのページに対象を広げる場合(インデックス)
Dim Cntl As Control
Dim i As Integer
Dim ans As String
With UserForm2.MultiPage1
For i = 0 To .Pages.Count - 1
.Value = i
For Each Cntl In .Pages(i).Controls
On Error GoTo NG_value
If Cntl.Value = "" Then
ans = ans & .Pages(.Value).Caption & vbCrLf & _
Cntl.Name & vbCrLf
End If
NG_value:
Next
Next i
End With
MsgBox (ans)

No.2
- 回答日時:
こんにちは、
>テキストボックス、コンボボックスが複数あります。
>オブジェクト名を付けています。
との事で、そこはご質問者様しか分からない所なのでお任せして
複数ページにあるTextBox1に対して空欄確認をするサンプルです。
>素人ですので分かり安く教えて下さい。
ご質問があいまいなので、具体例を示せませんので、
サンプルで確認してくださいね。サンプルでステップ実行などを行い挙動を確認すれば、それほど難しく無いかと。ごめんなさい。
Private Sub Button_Click()
Dim i As Integer
Dim ans As String
With MultiPage1
For i = 0 To .Pages.Count - 1
.Value = i
If TextBox1.Text = "" Then
ans = ans & .Pages(.Value).Caption & vbCrLf & _
TextBox1.Name & vbCrLf
End If
Next i
End With
MsgBox (ans)
End Sub
No.1
- 回答日時:
仕様が良くわかんない。
まず使う際。
ページを指定してってのはページを選択してって事?
その中の該当するコントロールの状態を調べたい?
オブジェクト名を変更している?
ページ数がどの程度か不明ですが、オブジェクト名が連番でないとしたならページ毎にそこに含まれる各コントロール名を一覧にして、その値を基に調べるって手もありそう。
だけど一番問題なのはそれらの情報が何もない事。
教わる前に必要なものは開示して欲しい。
作成したBookは回答者は見る事は出来ませんから。
Bookを見ながらなら早々に終わるかもですがそう言うのはダメでしょうし、周囲に理解できる人がいるのかどうか・・・
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
アクセスVBAのMe!と[ ]
-
文字列で小数点以下の0を削除し...
-
Bitmap.GetPixelより高速なもの
-
Excel VBAでマウスの左クリック...
-
【エクセル】複数のTextBoxに共...
-
GDIオブジェクトが増える……
-
pictureBoxの絵保存について。
-
「ご処理進めて頂きますようお...
-
エクセルVBAで、MsgBox やInput...
-
UPS警告音を止めたい
-
CloseとDisposeの違い
-
メルカリのメルカードで買い物...
-
フォームコントロールから作っ...
-
お家デートをしててハグを長い...
-
エクセルで、日付を入力すると...
-
Googleフォーム・複数人の申し...
-
オブジェクト名をVBAで指定...
-
VBAでCOPYを繰り返すと、処理が...
-
生活保護受給者は性欲をどんな...
-
uwscについて、同一の画像(仮...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
アクセスVBAのMe!と[ ]
-
VBA エンターキーでイベントに...
-
ChexBox1等の「1」を変数にで...
-
Excel VBAでマウスの左クリック...
-
【エクセルのマクロ】クリップ...
-
Accessのフォーム上にエクセル...
-
文字列で小数点以下の0を削除し...
-
【エクセル】複数のTextBoxに共...
-
日本語の文字化けを直す方法
-
エクセルVBAでセル番地を指定し...
-
ExcelのシートをAccessで表示し...
-
サブルーチンにオブジェクト名...
-
Excel2007 でのチェックボック...
-
コードでオブジェクトを最前面に
-
ユーザーフォームのインポート...
-
現在アクティブになっているオ...
-
クリスタルレポートのプレビュ...
-
Bitmap.GetPixelより高速なもの
-
vba ユーザーフォームのテキス...
-
Imageコントロールにグラフを表...
おすすめ情報