例えば
sheet1が
2008 1 1 2 3 4 5
2008 5 1 2 3 4 5
sheet2が
日付 予定
2008/1/1 初詣
2008/1/5 新年会
2008/1/3 スキー
2008/5/3 飲み会
2008/5/5 こどもの日
だとして、以下を実行すると、sheet1の予定があるセルの右上に赤い三角が表示されて、カーソルが上にくるとその内容を表示するはず。
Sub test()
Dim r As Integer
Dim c As Integer
Dim f As Range
For r = 1 To Sheet1.Cells(1, 1).End(xlDown).Row
For c = 3 To Sheet1.Cells(r, 1).End(xlToRight).Column
If Not Sheet1.Cells(r, c).Comment Is Nothing Then
Sheet1.Cells(r, c).Comment.Delete
End If
Set f = Sheet2.Columns("A:A").Find(What:=DateSerial(Sheet1.Cells(r, 1), Sheet1.Cells(r, 2), Sheet1.Cells(r, c)), LookIn:=xlFormulas, LookAt:=xlWhole)
If Not f Is Nothing Then
Sheet1.Cells(r, c).AddComment
Sheet1.Cells(r, c).Comment.Visible = False
Sheet1.Cells(r, c).Comment.Text Text:=f.Offset(0, 1).Value
End If
Next
Next
End Sub
補足
ご回答ありがとうございます。 直接に私の希望する機能は無いようなので、 セルにリンクを張り、そのリンクをマウスオーバーした時に出る チップヘルプに、希望の内容を書き出すことはできますか。 よろしければ、ご教授下さい。