teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

3

修正

2021/12/03 05:46

投稿

mnbwqz
mnbwqz

スコア74

title CHANGED
File without changes
body CHANGED
@@ -18,48 +18,4 @@
18
18
 
19
19
  ![デザインビュー](06625c875b2e581d067bbd169f223d15.jpeg)
20
20
 
21
- ![印刷プレビュー](607085fdf4b9e9994070afeb56a1af41.jpeg)
22
-
23
- ---
24
- (追記)
25
- 回答ありがとうございます。
26
- 無事に条件指定が出来ました。
27
-
28
- セクションを追加し販売日を月別でまとめた合計も出したいと思っています。
29
- 販売日の月別でまとめるグループフッター(販売日フッター)を作成し、下に太めの線を引きたいと思います。(赤線部分)
30
- 残高フッター部分と販売日フッター部分で線を引く処理が共通なので、関数を作成します。残高フッターと販売日フッターでは、下に線を引く場合の線の太さが違うところは条件分岐します(コードの下部、If セクション情報 = 販売日月別フッター の部分)。その条件にどのフッターから関数が呼ばれたかを(Me.Section(Me.Section).name)のような形で指定できればと思ったのですが、可能でしょうか。
31
-
32
- ![イメージ説明](e901ccfed657901f1c0ed93d28b36ad4.jpeg)
33
-
34
- ![イメージ説明](953e7ca44dd1759c6c350f159b747acd.jpeg)
35
- ```VBA
36
- Private Sub 残高フッター_Format(Cancel As Integer, FormatCount As Integer)
37
- If FormatCount = 1 Then Me.DataList = Mid(Me.DataList, 3)
38
- DrawLine (Me.Section(Me.Section).name)
39
- End Sub
40
-
41
- Private Sub 販売日月別フッター_Format(Cancel As Integer, FormatCount As Integer)
42
- DrawLine (Me.Section(Me.Section).name)
43
- End Sub
44
-
45
- Private Sub DrawLine(セクション情報)
46
- '線を引く
47
- '左に線
48
- Dim ctrl As Control
49
- For Each ctrl In Controls
50
- If Me.Section(ctrl.Section).Name = "残高フッター" And TypeName(ctrl) = "TextBox" Then
51
- ' If ctrl.Section = 18 And TypeName(ctrl) = "TextBox" Then
52
- Me.Line (ctrl.Left, ctrl.Top)-(ctrl.Left, ctrl.Top + 340), RGB(0, 0, 0)
53
- End If
54
- Next
55
- '右端に線
56
- Me.Line (残高.Left + 残高.Width, 残高.Top)-(残高.Left + 残高.Width, 残高.Top + 340), RGB(0, 0, 0)
57
- '下端に線
58
- If セクション情報 = 販売日月別フッター Then Me.DrawWidth = 20 Else Me.DrawWidth = 1
59
- Me.Line (販売経路.Left, 販売経路.Top + 340)-(残高.Left + 残高.Width, 残高.Top + 340), RGB(0, 0, 0)
60
- End Sub
61
- ```
62
-
63
- また、月別の合計を出す場合の、月の部分(印刷プレビューのオレンジで囲った部分)は、コントロールソースを「販売日」に指定して表示しています。販売日の月別でグループ化している設定を利用して、月の部分を表示するようにすることはできますでしょうか。
64
-
65
- ![イメージ説明](88437fb86e87bf2aa2b2e9538d3e4f94.jpeg)
21
+ ![印刷プレビュー](607085fdf4b9e9994070afeb56a1af41.jpeg)

2

修正

2021/12/03 05:46

投稿

mnbwqz
mnbwqz

スコア74

title CHANGED
File without changes
body CHANGED
@@ -27,7 +27,7 @@
27
27
 
28
28
  セクションを追加し販売日を月別でまとめた合計も出したいと思っています。
29
29
  販売日の月別でまとめるグループフッター(販売日フッター)を作成し、下に太めの線を引きたいと思います。(赤線部分)
30
- 残高フッター部分と販売日フッター部分で線を引く処理が共通なので、関数を作成します。残高フッターと販売日フッターでは、下に線を引く場合の線の太さが違うところは条件分岐します(コードの下部、If セクション情報 = 販売日月フッター の部分)。その条件にどのフッターから関数が呼ばれたかを(Me.Section(Me.Section).name)のような形で指定できればと思ったのですが、可能でしょうか。
30
+ 残高フッター部分と販売日フッター部分で線を引く処理が共通なので、関数を作成します。残高フッターと販売日フッターでは、下に線を引く場合の線の太さが違うところは条件分岐します(コードの下部、If セクション情報 = 販売日月フッター の部分)。その条件にどのフッターから関数が呼ばれたかを(Me.Section(Me.Section).name)のような形で指定できればと思ったのですが、可能でしょうか。
31
31
 
32
32
  ![イメージ説明](e901ccfed657901f1c0ed93d28b36ad4.jpeg)
33
33
 
@@ -55,7 +55,7 @@
55
55
  '右端に線
56
56
  Me.Line (残高.Left + 残高.Width, 残高.Top)-(残高.Left + 残高.Width, 残高.Top + 340), RGB(0, 0, 0)
57
57
  '下端に線
58
- If セクション情報 = 販売日月フッター Then Me.DrawWidth = 20 Else Me.DrawWidth = 1
58
+ If セクション情報 = 販売日月フッター Then Me.DrawWidth = 20 Else Me.DrawWidth = 1
59
59
  Me.Line (販売経路.Left, 販売経路.Top + 340)-(残高.Left + 残高.Width, 残高.Top + 340), RGB(0, 0, 0)
60
60
  End Sub
61
61
  ```

1

追記

2021/12/03 04:17

投稿

mnbwqz
mnbwqz

スコア74

title CHANGED
File without changes
body CHANGED
@@ -18,4 +18,48 @@
18
18
 
19
19
  ![デザインビュー](06625c875b2e581d067bbd169f223d15.jpeg)
20
20
 
21
- ![印刷プレビュー](607085fdf4b9e9994070afeb56a1af41.jpeg)
21
+ ![印刷プレビュー](607085fdf4b9e9994070afeb56a1af41.jpeg)
22
+
23
+ ---
24
+ (追記)
25
+ 回答ありがとうございます。
26
+ 無事に条件指定が出来ました。
27
+
28
+ セクションを追加し販売日を月別でまとめた合計も出したいと思っています。
29
+ 販売日の月別でまとめるグループフッター(販売日フッター)を作成し、下に太めの線を引きたいと思います。(赤線部分)
30
+ 残高フッター部分と販売日フッター部分で線を引く処理が共通なので、関数を作成します。残高フッターと販売日フッターでは、下に線を引く場合の線の太さが違うところは条件分岐します(コードの下部、If セクション情報 = 販売日月フッター の部分)。その条件にどのフッターから関数が呼ばれたかを(Me.Section(Me.Section).name)のような形で指定できればと思ったのですが、可能でしょうか。
31
+
32
+ ![イメージ説明](e901ccfed657901f1c0ed93d28b36ad4.jpeg)
33
+
34
+ ![イメージ説明](953e7ca44dd1759c6c350f159b747acd.jpeg)
35
+ ```VBA
36
+ Private Sub 残高フッター_Format(Cancel As Integer, FormatCount As Integer)
37
+ If FormatCount = 1 Then Me.DataList = Mid(Me.DataList, 3)
38
+ DrawLine (Me.Section(Me.Section).name)
39
+ End Sub
40
+
41
+ Private Sub 販売日月別フッター_Format(Cancel As Integer, FormatCount As Integer)
42
+ DrawLine (Me.Section(Me.Section).name)
43
+ End Sub
44
+
45
+ Private Sub DrawLine(セクション情報)
46
+ '線を引く
47
+ '左に線
48
+ Dim ctrl As Control
49
+ For Each ctrl In Controls
50
+ If Me.Section(ctrl.Section).Name = "残高フッター" And TypeName(ctrl) = "TextBox" Then
51
+ ' If ctrl.Section = 18 And TypeName(ctrl) = "TextBox" Then
52
+ Me.Line (ctrl.Left, ctrl.Top)-(ctrl.Left, ctrl.Top + 340), RGB(0, 0, 0)
53
+ End If
54
+ Next
55
+ '右端に線
56
+ Me.Line (残高.Left + 残高.Width, 残高.Top)-(残高.Left + 残高.Width, 残高.Top + 340), RGB(0, 0, 0)
57
+ '下端に線
58
+ If セクション情報 = 販売日月フッター Then Me.DrawWidth = 20 Else Me.DrawWidth = 1
59
+ Me.Line (販売経路.Left, 販売経路.Top + 340)-(残高.Left + 残高.Width, 残高.Top + 340), RGB(0, 0, 0)
60
+ End Sub
61
+ ```
62
+
63
+ また、月別の合計を出す場合の、月の部分(印刷プレビューのオレンジで囲った部分)は、コントロールソースを「販売日」に指定して表示しています。販売日の月別でグループ化している設定を利用して、月の部分を表示するようにすることはできますでしょうか。
64
+
65
+ ![イメージ説明](88437fb86e87bf2aa2b2e9538d3e4f94.jpeg)