|
Sheet1(Blank)のB列に日付が入力されており。その横のC〜AA列までその日の数値が入力されます。
Sheet2(2022)の1行目に一年分の日付が入力されているのですが、そこの日付と同じ列に転記したいです。
現在、Sheet1よりSheet2に行と列の入れ替えなしで下記のVBAを使用し、転記しているのですが、上記に書かせて頂いたように行と列を入れ替えて転記できるようにしたいです。
できることならば下記のものを流用する形でここに行と列の入れ替えを追加したいのですが、知識不足により上手くできませんでした。
お知恵を貸して頂けないでしょうか?
Sub 転記()
Dim wsBIO As Worksheet
Dim r As Range
Dim lastRW As Long
Set wsBIO = Sheets("2022")
With wsBIO.Range("B2", wsBIO.Cells(Rows.Count, "A").End(xlUp))
On Error Resume Next
Set r = .SpecialCells(xlCellTypeBlanks)
On Error GoTo 0
End With
If Not r Is Nothing Then
lastRW = Sheets("Blank").Cells(Rows.Count, "B").End(xlUp).Row
r.Formula2R1C1 = "=XLOOKUP(RC[-1],INT(Blank!R2C2:R" & lastRW & "C2),Blank!R2C3:R" & lastRW & "C27,"""")" '日付で検索 XLOOKUP
wsBIO.UsedRange = wsBIO.UsedRange.Value
End If
End Sub
Sheet2はSheet1の日付と項目欄を縦横逆にしただけです。
イメージ的には各シートは以下のようになっています。
Sheet1(Blank)
B列 C列 D列・・・AA列
1行目 日付 温度 温度 電流
2行目 1/1 20 33 5
3行目 1/8 30 20 6
Sheet2(BIO)
A列 B列 C列 ・・・NB列
1行目 日付 1/1 1/2 ・・・12/31
2行目 温度 20 30
3行目 温度 1/8 30
4行目 電流 5 6
よろしくお願い致します。
|
|