シート2の1行目の指定したセルの値をシート1の指定セルに
転記を行いシート1が印刷。
印刷後はシート2の2行目の指定したセルの値をシート1の指定したセルに
転記してシート1が印刷。
シート2にデータが無くなったら停止という以下のマクロにて
シート2のO列はシート1のセルA19に順次転記なのですが
O列は運用上空白が有る場合が判明した為
値がある場合はその値を転記、値が無い場合は半角で ZZZ と
転記をしたいのですがどこを変更していいのか分かりません。
よろしくお願いします。
Sub データ転記()
Dim myRng(1 To 23)
Dim cpRng
Dim i As Integer
Dim n As String, myStr As String
With Sheets("Sheet2")
Set myRng(1) = .Range("B2")
Set myRng(2) = .Range("C2")
Set myRng(3) = .Range("D2")
Set myRng(4) = .Range("D2")
Set myRng(5) = .Range("D2")
Set myRng(6) = .Range("E2")
Set myRng(7) = .Range("E2")
Set myRng(8) = .Range("F2")
Set myRng(9) = .Range("F2")
Set myRng(10) = .Range("H2")
Set myRng(11) = .Range("J2")
Set myRng(12) = .Range("K2")
Set myRng(13) = .Range("K2")
Set myRng(14) = .Range("L2")
Set myRng(15) = .Range("M2")
Set myRng(16) = .Range("N2")
Set myRng(17) = .Range("O2")
Set myRng(18) = .Range("P2")
Set myRng(19) = .Range("Q2")
Set myRng(20) = .Range("R2")
Set myRng(21) = .Range("S2")
Set myRng(22) = .Range("U2")
Set myRng(23) = .Range("G2")
End With
cpRng = Split("B10,O4,G3,F10,F13,G10,G13,H10,H13,O3,L10,M10,M13,O5,E19,F19,A19,O6,D21,B6,I19,J19,G5", ",") '転記先配列化
With Sheets("Sheet1")
.Range("B10,G3,F10,F13,G10,G13,L10,E19,F19,J19,O7,O8,C19,D10,D13,A19,O4,O5").NumberFormatLocal = "@"
Do While myRng(1) <> ""
For i = 1 To 23
.Range(cpRng(i - 1)).Value = myRng(i).Value
Next
.Range("C3,C13").Value = Left(.Range("O3").Value, 10)
.Range("C10").Value = Mid(.Range("O3"), 11, 6)
.Range("O7").Value = Format(Range("O6").Value, "0000000")
.Range("O8").Value = Format(Range("J19").Value, "0000000")
Call 加工01
Call 加工02
'印刷
.PrintOut
For i = 1 To 23
Set myRng(i) = myRng(i).Offset(1)
Next i
Loop
.Range("B10,O4,G3,F10,F13,G10,G13,H10,H13,O3,L10,M10,M13,O5,E19,F19,A19,O6,D21,B6,I19,J19,C3,C10,C13,C19,D10,D13,O8,O7,G5").ClearContents
End With
For i = 1 To 23
Set myRng(i) = Nothing
Next
MsgBox "印刷終了"
Sheets("Sheet2").Select
Cells.Select
Selection.Delete Shift:=xlUp
Sheets("Sheet1").Select
Range("C3").Select
End Sub
No.2ベストアンサー
- 回答日時:
ひとつ目の for文 を次のようにしてみては?
For i = 1 To 23
If (myRng(i).Value = "" Or myRng(i).Value = " ") Then
.Range(cpRng(i - 1)).Value = "zzz"
Else
.Range(cpRng(i - 1)).Value = myRng(i).Value
End If
Next
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) ExcelVBAで、index、match関数を使用して、指定範囲に出力したい 3 2022/10/18 21:53
- Visual Basic(VBA) エクセルのマクロを使ってメールを送る方法について教えてください 2 2022/03/29 01:36
- Visual Basic(VBA) ExcelVBAに関する質問 3 2023/02/17 10:47
- Visual Basic(VBA) excel vbaでvlooupの変数がわかりません。 7 2022/05/30 09:35
- Visual Basic(VBA) 別シートのデータを参照して値を入れたい。 まとめデータシートのC列D列の値を商品一覧シートのコードが 7 2022/08/17 13:20
- Visual Basic(VBA) 稀に1円合いません? Sheet1から金額と個数を貼り付ける下記コードで、金額を切り上げるコードを何 3 2022/09/05 15:11
- Visual Basic(VBA) 配列の勉強をしています。使用する変数の意味、検索条件の書き方が難しいです。 2 2022/09/15 14:06
- Visual Basic(VBA) 3つのプロシージャをまとめたら実行時エラー発生で対応不能 6 2022/05/17 01:47
- Visual Basic(VBA) 他のシートからコピーする下記マクロで貼付け位置をWorksheets(1).Range("A3")の 8 2023/01/30 18:48
- Visual Basic(VBA) VBAが止まります。 2 2022/09/02 14:02
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
首吊りどこ締めるの
-
至急!尿検査前日にオナニーし...
-
尿検査前日に自慰行為した時の...
-
白血球が多いとどんな心配があ...
-
尿検査の前日は自慰控えたほう...
-
検便についてです。 便は取れた...
-
彼女のことが好きすぎて彼女の...
-
勃起する時って痛いんですか? ...
-
EXCELで条件付き書式で空白セル...
-
腕を見たら黄色くなってる部分...
-
EXCELで式からグラフを描くには?
-
変な話しになります。尿検査で...
-
excelでsin二乗のやり方を教え...
-
エクセル指定した範囲からラン...
-
Excelで""で囲む方法
-
ある範囲のセルから任意の値を...
-
2つの数値のうち、数値が小さい...
-
精子が黄色?
-
エクセルでエラーが出て困って...
-
納豆食べた後の尿の納豆臭は何故?
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
至急!尿検査前日にオナニーし...
-
首吊りどこ締めるの
-
尿検査の前日は自慰控えたほう...
-
尿検査前日に自慰行為した時の...
-
検便についてです。 便は取れた...
-
白血球が多いとどんな心配があ...
-
中出しをするとお腹が痛い・・・。
-
射精をして1週間以内に尿検査を...
-
彼女のことが好きすぎて彼女の...
-
腕を見たら黄色くなってる部分...
-
勃起する時って痛いんですか? ...
-
変な話しになります。尿検査で...
-
これって喉仏ですか? 私は女性...
-
EXCELで条件付き書式で空白セル...
-
男です。昨日の午後3時くらいに...
-
今朝、毎朝の習慣でオナニーし...
-
納豆食べた後の尿の納豆臭は何故?
-
1日前の検尿
-
値が入っているときだけ計算結...
-
精子が黄色?
おすすめ情報