|
こんにちは
コードも見て気付いた点です。
Worksheets("xx")とかSheets("xx")
Meを使ったり使わなかったりしている
テキストボックスでは「Value」プロパティを使っているがセルの値の
取得のときは使っていない。
コードに統一性を持たせましょう。
TextBoxなど小文字を使ったりしている
セル番地やコントロールのオブジェクト名は正確に記載した方が良いです。
Withステートメントを有効に使いましょう。
一応こんな感じです。
Dim i As Long, Ro As Long, Co As Long
Dim R As Range, Ch As Boolean
With Worksheets(Mys)
For i = 5 To 175
Ch = True
Select Case i
Case 5 To 46
Ro = 4: Co = 1
Case 48 To 89
Ro = 5: Co = 44
Case 91 To 132
Ro = 6: Co = 87
Case 134 To 175
Ro = 7: Co = 130
Case 47
Ch = False: Set R = .Range("D4:AS4")
Case 90
Ch = False: Set R = .Range("D5:AS5")
Case 133
Ch = False: Set R = .Range("D6:AS6")
Case 176
Ch = False: Set R = .Range("D7:AS7")
End Select
If Ch Then
Me.Controls("TextBox" & i).Value = .Cells(Ro, i - Co).Value
Else
Me.Controls("TextBox" & i).Value = Application.Sum(R)
Set R = Nothing
End If
Next i
End With
|
|