トップページ > プログラム > 2014年09月12日 > 8FOfXnnF

書き込み順位&時間帯一覧

13 位/217 ID中時間01234567891011121314151617181920212223Total
書き込み数0000000000000000000003104



使用した名前一覧書き込んだスレッド一覧
デフォルトの名無しさん
VBAなんでも質問スレ

書き込みレス一覧

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に関しては試行錯誤でなぜかそれを入れないと動かなくなってしまったので…
いろいろと精査してみます、ありがとうございます。


※このページは、『2ちゃんねる』の書き込みを基に自動生成したものです。オリジナルはリンク先の2ちゃんねるの書き込みです。
※このサイトでオリジナルの書き込みについては対応できません。
※何か問題のある場合はメールをしてください。対応します。