- VBAなんでも質問スレ
860 :デフォルトの名無しさん[]:2014/09/12(金) 21:26:53.98 ID:8FOfXnnF - すみません、コードをきれいな書き方に修正したいのですが
こちらで質問させていただいてもよろしいでしょうか
| - VBAなんでも質問スレ
862 :デフォルトの名無しさん[]:2014/09/12(金) 21:42:28.27 ID:8FOfXnnF - >>861
ありがとうございます 業務簡略化のためにVBAを勉強してコードを組んでいるのですが きれいなコードを書くのが苦手で、自分でもなにを書いているのかわからなくなる時があります。 変数をローマ字一文字にしてしまうとさらにわけがわからなくなったので ある程度なんの変数なのかわかるように工夫はしてみたのですが余計に混乱してしまいます… それほど難しいコードを組んでいるわけでもないのですが たとえば下のコードをもっときれいに組む方法ってあるでしょうか? よろしくお願いいたします。 Public Sub New_Rolling_Issue() Dim Setting_Down As Integer Dim Loop_Down As Integer '行のループ番号を格納する変数 Dim Loop_No As Integer '列のループ番号を格納する変数 Dim End_Count As Integer '請求書書式の行数を確認する変数 Dim Print_Flag As Integer Application.ScreenUpdating = False 'マクロ実行中の画面の描画を停止 Call Invoice_Formula_Reset With Worksheets(Invoice_WS) Setting_Down = Worksheets(Setting_WS).Cells(Rows.Count, 2).End(xlUp).Row + 5 For Loop_No = Start_No To End_No Step 2 '【工事一覧入力】の部屋番号列を左方向に向かって1行飛ばしで格納数を変更 .Cells(6, 12).Value = Worksheets(Input_WS).Cells(3, Loop_No).Value '【請求書印刷】の請求書発行No.を【一覧入力】に基づいて変更 Print_Flag = 1 .Range(Itemize) = "" '請求書明細をクリア End_Count = 9 For Loop_Down = 13 To Setting_Down '【一覧入力】の数量行を下方向に向かって格納数を変更
| - VBAなんでも質問スレ
863 :デフォルトの名無しさん[sage]:2014/09/12(金) 21:43:07.88 ID:8FOfXnnF - 続きです
If Worksheets(Input_WS).Cells(Loop_Down, Loop_No).Value <> "" Then '【入力一覧】の数量行に数字の入力があるか確認 .Cells(End_Count, "B").Value = Worksheets(Input_WS).Cells(Loop_Down, "C").Value ' あれば【請求書印刷】の摘要欄に名称を入力 .Cells(End_Count, "E").Value = Worksheets(Input_WS).Cells(Loop_Down, Loop_No).Value '【請求書印刷】の数量欄に数量を入力 End_Count = End_Count + 1 '【請求書印刷】の行数チェックの変数に+1 If End_Count = 17 Then '【請求書印刷】の行数が規定まで達したら手動発行メッセージ表示 MsgBox "請求書発行No." & Cells(6, 12) & "は手動で発行してください。", vbExclamation, "確認" Print_Flag = 2 Exit For End If End If Next Loop_Down If Print_Flag = 1 Then ActiveSheet.PrintOut End If Next Loop_No End With Application.ScreenUpdating = True '画面の描画を再開 End Sub
| - VBAなんでも質問スレ
868 :デフォルトの名無しさん[sage]:2014/09/12(金) 22:29:40.60 ID:8FOfXnnF - レスありがとうございます。
>>864 本当に自分でもわからなくなる時があるので…もっとわかりやすくコメントを書いてみます >>865 変数やはりダメダメですか ぜひ参考にさせていただきます。 >>866 rowとcolumnでしょうか 行数や列数の変数のときはRow_Noなどにした方がよいですか? PrintFlagに関しては試行錯誤でなぜかそれを入れないと動かなくなってしまったので… いろいろと精査してみます、ありがとうございます。
|
|