- ベストアンサー
ExcelでVLOOKUP
Excelで異なるシートの表からデータを参照したいです。 VLOOKUPにてできるのですが、データしかとれません。 書式ごとデータをとることはできませんか? data1 ああああ (赤色 12pt) data2 いいいい (青色 18pt) data3 うううう (標準のまま) data2の「いいいい」はできるんですが、青色や文字のフォントサイズ までいっしょに反映されるようにしたいです。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
(1)エクセルの関数式は、Cell関数を除いて、値に関するもので、値(計算値や何番目など)番号を返します。 セルに設定された書式(色、フォント、サイズ、罫線など)に関する情報は取れません。 したがって無理です。 (2)条件付書式が3種類程度なら質問と同じことを やります。 (3)VBAを使えば値を持ってくるだけで出来ます。 Sub test01() Dim ws1, ws2 As Worksheet Set ws1 = Worksheets("sheet1") Set ws2 = Worksheets("sheet2") d = ws1.Range("A65356").End(xlUp).Row MsgBox d For i = 1 To d x = Application.VLookup(ws1.Cells(i, "A"), ws2.Range("$a$1:$d$6"), 2, False) y = Application.VLookup(ws1.Cells(i, "A"), ws2.Range("$a$1:$d$6"), 3, False) z = Application.VLookup(ws1.Cells(i, "A"), ws2.Range("$a$1:$d$6"), 4, False) ws1.Cells(i, "B") = x ws1.Cells(i, "a").Interior.ColorIndex = y ws1.Cells(i, "a").Font.Size = z Next i End Sub 急いで作ったので内容はもう一つですが、こんな内容です。 (データ)Sheet2のA1:D3 111 aaa 3 10 222 bbb 5 14 333 ccc 6 18 Sheet1のA1:A3に 111 aaa 222 bbb 333 ccc のとき、B列のようになり、A列に色がつき、フォントサイズが変る。
お礼
ありがとうございました。 やっぱVBA使うしかないんですね。