Excel VBA質問箱 IV

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

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


14435 / 76738 ←次へ | 前へ→

【67799】Re:もっと簡単にできないでしょうか?
発言  bakadeus E-MAIL  - 11/1/10(月) 14:40 -

引用なし
パスワード
   ▼かみちゃん さん:
早速のご教示ありがとうございます。
返事が遅れて申し訳ありません。

ご教示いただいたコードを試そうと思っているのですが、その変数定義に関係した各扶養家族の計算式等のコードを下記のとおり記述しています。
ご教示いただいたコードにした場合、下記のコードをどう修正すればよいのでしょうか?

以下が一人分の関係コードです。
2人目以降も「●●●●● 一人目扶養家族控除額算出」以下を「_1」が「_2」「_3」・・・「_6」としているだけで、その他の構文は全く同じです。


'●●●●● 一人目扶養家族控除額算出

Private Sub 一人目扶養家族控除額算出()

基礎控除_1算出
特定扶養控除_1算出
同居加算額_1算出
寡婦加算額_1算出
障害者加算額_1算出
Text家族控除額_1.Value = huyou_1 + tokutei_1 + doukyo_1 + kahu_kouzyo_1 + syougai_kouzyo_1
家族控除額総計計算
扶養控除額総計算出

End Sub
'/////1.氏名に入力された場合、基礎控除額を計上
Private Sub 基礎控除_1算出()

If Text家族氏名_1.Value = "" Then
  huyou_1 = 0

Else
  huyou_1 = kiso

End If

Text家族控除額_1.Value = huyou_1 + tokutei_1 + doukyo_1 + kahu_kouzyo_1 + syougai_kouzyo_1
家族控除額総計計算
扶養控除額総計算出

End Sub

'/////2.生年月日から特定扶養者か老人かを判定し、特定扶養控除額又は老人扶養控除額を算出する
Private Sub 特定又は老人判定_1()

Dim m1 As Date
On Error Resume Next
m1 = Range("扶養控除!H11").Value
If Err.Number Then
On Error GoTo 0
m1 = DateValue(Replace(Range("扶養控除!H11").Value, ".", "/"))
Range("扶養控除!H11").Value = m1
End If
On Error GoTo 0

Dim mybirthday As Date
mybirthday = DateValue(Combo家族元号_1.Value & Trim(Combo家族生年_1.Value) & "/" & Trim(Combo家族生月_1.Value) & "/" & Trim(Combo家族生日_1.Value))

'MsgBox mybirthday

If mybirthday <= Range("扶養控除!g9").Value Then
Text特定別_1.Value = "老人"

ElseIf mybirthday >= Range("扶養控除!g11").Value And mybirthday <= Range("扶養控除!h11").Value Then
 Text特定別_1.Value = "特定"

Else
 Text特定別_1.Value = "一般"

End If

特定扶養控除_1算出

End Sub
Private Sub 特定扶養控除_1算出()

If Text特定別_1.Value = "老人" Then
tokutei_1 = kasan_7

ElseIf Text特定別_1.Value = "特定" Then

tokutei_1 = kasan_6

Else
 Text特定別_1.Value = "一般"
tokutei_1 = 0

End If

Text家族控除額_1.Value = huyou_1 + tokutei_1 + doukyo_1 + kahu_kouzyo_1 + syougai_kouzyo_1

家族控除額総計計算
扶養控除額総計算出

End Sub

'/////3.同居別居別を判定し、老親の場合、同居加算額を算出する
Private Sub 同居加算額_1算出()

If Combo同居別_1.Value = "同居" And Text特定別_1.Value = "老人" Then
  doukyo_1 = kasan_8

Else

  doukyo_1 = 0

End If

Text家族控除額_1.Value = huyou_1 + tokutei_1 + doukyo_1 + kahu_kouzyo_1 + syougai_kouzyo_1
家族控除額総計計算
扶養控除額総計算出
End Sub
'/////4.寡婦別欄に入力された場合、寡婦控除額を判定
Private Sub 寡婦加算額_1算出()

kahu_1 = Combo寡婦別_1.Value

  Select Case kahu_1
    
    Case "寡婦"
      kahu_kouzyo_1 = kasan_5
    

    Case "寡夫"
      kahu_kouzyo_1 = kasan_5
      
    Case Else
      kahu_kouzyo_1 = 0
      
  End Select

Text家族控除額_1.Value = huyou_1 + tokutei_1 + doukyo_1 + kahu_kouzyo_1 + syougai_kouzyo_1
家族控除額総計計算
扶養控除額総計算出
End Sub
'/////5.障害別欄に入力された場合、障害控除額を判定
Private Sub 障害者加算額_1算出()

Dim syougai_1 As Variant
syougai_1 = Combo障害別_1.Value

  Select Case Combo障害別_1.Value
    
    Case "特別"
      syougai_kouzyo_1 = kasan_2

     Case "同居特別"
      syougai_kouzyo_1 = kasan_1

    Case "一般"
      syougai_kouzyo_1 = kasan_3

    Case Else
      syougai_kouzyo_1 = 0

  End Select
                     
Text家族控除額_1.Value = huyou_1 + tokutei_1 + doukyo_1 + kahu_kouzyo_1 + syougai_kouzyo_1
家族控除額総計計算
扶養控除額総計算出
End Sub


Private Sub Combo寡婦別_1_Change()

寡婦加算額_1算出

End Sub

Private Sub Combo障害別_1_Change()

障害者加算額_1算出

End Sub

Private Sub Combo同居別_1_Change()

同居加算額_1算出

End Sub
Private Sub Text家族氏名_1_Change()

基礎控除_1算出

End Sub


Private Sub Combo家族生日_1_afterupdate()
  
  If Combo家族生年_1.Value <> "" And Combo家族生月_1.Value <> "" Then
  
特定又は老人判定_1
'特定扶養控除_1算出
  
  Else: Exit Sub
  
  End If
  
End Sub
0 hits

【67778】もっと簡単にできないでしょうか? bakadeus 11/1/7(金) 19:50 質問
【67782】Re:もっと簡単にできないでしょうか? かみちゃん 11/1/7(金) 23:18 発言
【67787】Re:もっと簡単にできないでしょうか? bakadeus 11/1/8(土) 14:55 発言
【67790】Re:もっと簡単にできないでしょうか? かみちゃん 11/1/8(土) 17:01 発言
【67799】Re:もっと簡単にできないでしょうか? bakadeus 11/1/10(月) 14:40 発言
【67791】Re:もっと簡単にできないでしょうか? UO3 11/1/8(土) 17:42 発言
【67798】Re:もっと簡単にできないでしょうか? bakadeus 11/1/10(月) 14:16 発言
【67800】Re:もっと簡単にできないでしょうか? neptune 11/1/10(月) 14:58 発言
【67804】Re:もっと簡単にできないでしょうか? UO3 11/1/10(月) 18:28 発言
【67908】Re:もっと簡単にできないでしょうか? bakadeus 11/1/15(土) 17:46 お礼

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