エクセル(Excel)&ワード(Word)質問掲示板

より見やすく使いやすいエクセル掲示板を目指し、新たにエクセルの質問掲示板を開設いたしました。 これに伴い、当サイトでは今後、新規投稿はできなくなります。(閲覧は当面可能です。)
今後は新掲示板をご利用いただきますよう宜しくお願い致します。今後ともよろしくお願い致します。
○新掲示板
エクセル(Excel)解決掲示板

エクセル・ワードの基本操作に関する質問や関数やマクロの使い方などエクセルとワードに関する質問掲示板。
Welcome Guest 
メインメニュー
ログイン
ユーザー名:

パスワード:


パスワード紛失

マクロサンプル

前の投稿 - 次の投稿 | 親投稿 - 子投稿なし | 投稿日時 2011-2-6 19:03
ゲスト    投稿数: 0
Option Explicit

Private Sub CheckBox1_Click()

End Sub

Private Sub CheckBox2_Click()

End Sub

Private Sub CommandButton1_Click()

'宣言
Dim CTL As Control
Dim CheckBox_Sum As Integer
Dim CheckBox_True_Flag As Boolean
Dim CheckBox_Flag() As Variant
Dim Siji_SH_NAME As Variant
Dim Gazou_SH_NAME As Variant
Dim OUT_SHT1() As Variant
Dim OUT_SHT2() As Variant
Dim i As Integer
Dim As Integer
Dim As Integer

'設定
Siji_SH_NAME = Array(, "A", "B", "C", "D", "E", "F", "G")
Gazou_SH_NAME = Array(, "A1", "B1", "C1", "D1", "E1", "F1", "G1")
CheckBox_True_Flag = False

'チェックボックス総数及び、チェック有無確認
For Each CTL In Me.Controls
If TypeName(CTL) = "CheckBox" Then
CheckBox_Sum = CheckBox_Sum + 1
If CTL.Value = True Then
CheckBox_True_Flag = True
End If
End If
Next

'0件判定
If CheckBox_True_Flag = False Then
MsgBox "チェックが1つもされておりません。"
Exit Sub
End If

'再宣言
ReDim CheckBox_Flag(1 To CheckBox_Sum)
ReDim OUT_SHT1(1 To CheckBox_Sum)
ReDim OUT_SHT2(1 To CheckBox_Sum)

'インデックス情報を配列に記憶
For Each CTL In Me.Controls
If CTL.Value = True Then
i = i + 1
CheckBox_Flag(i) = 1
End If
Next

'インデックス判定及び、シート抽出
For = 1 To CheckBox_Sum
If CheckBox_Flag() = 1 Then
OUT_SHT1() = Siji_SH_NAME()
OUT_SHT2() = Gazou_SH_NAME()
End If
Next

'デバッキング
For = 1 To CheckBox_Sum
If OUT_SHT1() = "" Then
Else
Debug.Print OUT_SHT1(), OUT_SHT2()
End If
Next

End Sub

Private Sub CommandButton2_Click()

Dim RETURN_MESSAGE As Long

RETURN_MESSAGE = MsgBox("終了しますか?", vbYesNo + vbQuestion, "確認応答")

If RETURN_MESSAGE = vbYes Then
MsgBox "終了します。"
Workbooks("印刷.xlsm").Close
ElseIf RETURN_MESSAGE = vbNo Then
MsgBox "終了しません。"
End If

End Sub

Private Sub CommandButton3_Click()
Unload Me
End Sub

Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)
If CloseMode <> 1 Then
MsgBox "【×】抜け厳禁だ!", vbOKOnly, "【×】抜け禁止通知"
Cancel = True
End If
End Sub

Option Explicit

Private Sub Workbook_Open()

UserForm1.Show

End Sub
投票数:119 平均点:7.23
返信する

このトピックに投稿する

題名
ゲスト名   :
投稿本文

  条件検索へ


スポンサーリンク
スポンサーリンク
エクセル・ワード質問/回答集 - クイズ・問題QUUS! - 無料英語学習 - 投資家・トレーダー掲示版
為替(FX)テクニカル分析入門 - エクセル(EXCEL)学習・入門 - Word(ワード)の使い方/活用・入門
Copy right(c) 2006-2010 エクセル&ワード質問掲示板 all right reserved