特定の行を選択し、paste-special プロパティを使用して列ごとに貼り付けるためのコードをいくつか書きました。私のコードは正しく動作しています:
lngRow = Me.TextBox4.Value
strCol = Me.TextBox5.Value
Set rng = Range("A:A").Find(What:=lngRow, LookIn:=xlValues, LookAt:=xlWhole)
If rng Is Nothing Then
MsgBox "Value not found in row 1", vbExclamation
Else
Range(rng, rng.End(xlToRight)).Copy
Range("A1:E3").Columns(strCol).Offset(, 1).PasteSpecial Transpose:=True
Range("A1:E3").Rows(1).Copy
Range("A1:E3").Columns(strCol).PasteSpecial Transpose:=True
endif
ここでの問題は、Range(rng, rng.End(xlToRight)).Copy を使用して値をコピーし、貼り付けに Range("A1:E3").Columns(strCol).Offset(, 1) を使用していることです。 PasteSpecial 転置:=True。
コピーされたすべての値を貼り付けるにはどうすればよいですか? 値が列 F にある場合、このマクロはそれらの値を貼り付けません。