回答編集履歴
3
syuusei
answer
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
VBAを使わなくてもできそうですが、使うならこんな感じでしょうか。
|
2
2
|
```
|
3
|
-
Dim sht1 As
|
3
|
+
Dim sht1 As Worksheet
|
4
|
-
Dim sht2 As
|
4
|
+
Dim sht2 As Worksheet
|
5
5
|
|
6
6
|
Dim iReadRow As Integer
|
7
7
|
Dim iWriteRow As Integer
|
2
修正
answer
CHANGED
@@ -18,7 +18,7 @@
|
|
18
18
|
'読取行A列が未入力ならループを抜ける
|
19
19
|
If sht1.Cells(iReadRow, 1) = "" Then Exit Do
|
20
20
|
|
21
|
-
For iCol = 1 To
|
21
|
+
For iCol = 1 To 7
|
22
22
|
If iCol = 1 Then
|
23
23
|
'出力先A列には読取行の次行A列(苗字)をセット
|
24
24
|
sht2.Cells(iWriteRow, iCol) = sht1.Cells(iReadRow + 1, 1)
|
1
追記
answer
CHANGED
@@ -31,4 +31,11 @@
|
|
31
31
|
iReadRow = iReadRow + 2 '読取行を2行進める
|
32
32
|
iWriteRow = iWriteRow + 1 '出力行を1行進める
|
33
33
|
Loop
|
34
|
-
```
|
34
|
+
```
|
35
|
+
|
36
|
+
|
37
|
+
(追記)
|
38
|
+
サンプルコードはシート1⇒シート2へのコピーで作っていますが、ブック1⇒ブック2と読み替えていただいても問題ないはずです。
|
39
|
+
|
40
|
+
あと、掲示いただいたコードは質問文のルールとはちょっと違う並びになりそうな気がするのですが・・・。
|
41
|
+
(動かして確認はしていませんが、B列からB列にコピーしているように見えます。)
|