Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


2144 / 13645 ツリー ←次へ | 前へ→

【69683】月末のみマクロが起動しない ドジ子 11/8/20(土) 19:31 質問[未読]
【69684】Re:月末のみマクロが起動しない basw 11/8/20(土) 21:32 回答[未読]
【69686】Re:月末のみマクロが起動しない ドジ子 11/8/20(土) 22:09 質問[未読]
【69688】Re:月末のみマクロが起動しない jyun 11/8/21(日) 14:09 回答[未読]
【69694】Re:月末のみマクロが起動しない ドジ子 11/8/22(月) 3:10 質問[未読]
【69695】Re:月末のみマクロが起動しない jyun 11/8/22(月) 8:14 回答[未読]

【69683】月末のみマクロが起動しない
質問  ドジ子  - 11/8/20(土) 19:31 -

引用なし
パスワード
   以前にこちらでお世話になったのですが、再度教えていただきたく投稿させていただきました。よろしくお願い致します。

一ヵ月分を各シートに入力しているのですが、月末(30日・31日)のみマクロが起動しないので、起動させるようにしたいのです。
各シートには1日〜31日まで入力できるようになっていますが、入力日は翌日に入力するので、月末の入力は翌月の1日に入力になります。


Workbookには、下記のように入力しています。
rivate Sub Workbook_SheetBeforeDoubleClick(ByVal Sh As Object, ByVal Target As Range, Cancel As Boolean)
If Sh.Range("B34").Value = 2 Then
UserForm1.Show
End If
End Sub

Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
Select Case Target.Column
Case 5, 6, 14
Target.Offset(0, 1).Select
Case 15
Target.Offset(0, 17 - 15).Select
Case 7
If Sh.Range("B34").Value = 4 Then
Target.Offset(0, 7).Select
Target.Range("F1,H1").Select
Target.Range("H1").Activate
ElseIf Sh.Range("B34").Value = 5 Then
Target.Offset(0, 7).Select
Target.Range("F1").Select
Target.Range("K1").Activate
End If
End Select
End Sub

UserForm1の所には、Formに入力するとシートに入力されるようになっています。
Private Sub 稼動1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
  総稼動玉数合計.Text = Val(稼動2.Text) + Val(稼動1.Text)
End Sub

Private Sub 稼動2_Exit(ByVal Cancel As MSForms.ReturnBoolean)
  総稼動玉数合計.Text = Val(稼動1.Text) + Val(稼動2.Text)
End Sub

Private Sub 差玉1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
  差玉合計.Text = Val(差玉2.Text) + Val(差玉1.Text)
End Sub

Private Sub 差玉2_Exit(ByVal Cancel As MSForms.ReturnBoolean)
  差玉合計.Text = Val(差玉1.Text) + Val(差玉2.Text)
End Sub

Private Sub 売上1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
  総売上合計.Text = Val(売上2.Text) + Val(売上1.Text)
End Sub

Private Sub 売上2_Exit(ByVal Cancel As MSForms.ReturnBoolean)
  総売上合計.Text = Val(売上1.Text) + Val(売上2.Text)
End Sub

Private Sub 決定_Click()
Range("e" & Day(Date) - 0).Value = 総稼動玉数合計.Value
Range("f" & Day(Date) - 0).Value = 差玉合計.Value
Range("g" & Day(Date) - 0).Value = 総売上合計.Value
Unload Me
End Sub

宜しくお願い致します。

【69684】Re:月末のみマクロが起動しない
回答  basw  - 11/8/20(土) 21:32 -

引用なし
パスワード
   >Private Sub 決定_Click()
>Range("e" & Day(Date) - 0).Value = 総稼動玉数合計.Value
>Range("f" & Day(Date) - 0).Value = 差玉合計.Value
>Range("g" & Day(Date) - 0).Value = 総売上合計.Value
>Unload Me
>End Sub

月末分は1日入力ですから、セルの1行目を見てください。

【69686】Re:月末のみマクロが起動しない
質問  ドジ子  - 11/8/20(土) 22:09 -

引用なし
パスワード
   回答ありがとうございます。

>月末分は1日入力ですから、セルの1行目を見てください。

セルの1行目に入力されてると言う事でしょうか?
それも、考えてみましたが入力されていません。
ダブルクリック時に、Formが起動しないのも分からないのです。
それも翌月の1日のみです。
原因を詳しく教えてもらえませんでしょうか。
申し訳ありませんが、よろしくお願い致します。

【69688】Re:月末のみマクロが起動しない
回答  jyun  - 11/8/21(日) 14:09 -

引用なし
パスワード
   ▼ドジ子 さん:
>ダブルクリック時に、Formが起動しないのも分からないのです。
>それも翌月の1日のみです。

UserForm1が開く条件は
If Sh.Range("B34").Value = 2 Then
だから、Range("B34")の値が 2 では無いとか...

【69694】Re:月末のみマクロが起動しない
質問  ドジ子  - 11/8/22(月) 3:10 -

引用なし
パスワード
   ご回答ありがとうございます。

>UserForm1が開く条件は
>If Sh.Range("B34").Value = 2 Then
>だから、Range("B34")の値が 2 では無いとか...

B34の値は2です。
翌月の1日に前月分の30日分を入力しようとすると、マクロが起動しないのです。何か問題があると思うのですが、分かりません。
宜しくお願い致します。

【69695】Re:月末のみマクロが起動しない
回答  jyun  - 11/8/22(月) 8:14 -

引用なし
パスワード
   ▼ドジ子 さん:
>B34の値は2です。

>>ダブルクリック時に、Formが起動しないのも分からないのです。
>>それも翌月の1日のみです。

で、結局UserForm1は起動するのですか?

>翌月の1日に前月分の30日分を入力しようとすると、マクロが起動しないのです。何か問題があると思うのですが、分かりません。

マクロが起動しない とは。どういう事ですか?

>Range("e" & Day(Date) - 0).Value = 総稼動玉数合計.Value
>Range("f" & Day(Date) - 0).Value = 差玉合計.Value
>Range("g" & Day(Date) - 0).Value = 総売上合計.Value

月末分を1日に入力するのなら、これは明らかにおかしいでしょう。
Day(Date) - 0

Day(Date - 1) + 1
では、ないでしょうか。
でも1日が休みの場合等は入力がおかしくなりませんか。

2144 / 13645 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free