Home |
Search |
Today's Posts |
#1
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]() I cannot figure out what I'm doing wrong. I get a "type mismatch" error on the vlookup line. Sub AutoComment() Dim abvar As String Dim mycell As Range For Each mycell In Range("B4:H27") abvar = Application.VLookup(mycell.Value, "SkillLegend!A:B", 2, False) mycell.AddComment Text:=abvar Next mycell End Sub Thank you... -- AllenWatts ------------------------------------------------------------------------ AllenWatts's Profile: http://www.excelforum.com/member.php...o&userid=34301 View this thread: http://www.excelforum.com/showthread...hreadid=541045 |
#2
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
If the =vlookup() would return the #n/a, your code will have trouble.
Option Explicit Sub AutoComment() Dim abvar As Variant 'in case it's an error Dim mycell As Range For Each mycell In Range("B4:H27") abvar = Application.VLookup(mycell.Value, _ worksheets("SkillLegend").range("A:B"), 2, False) if iserror(abvar) then 'skip it? else if mycell.comment is nothing then 'no existing comment else mycell.comment.delete end if mycell.AddComment Text:=abvar end if Next mycell End Sub AllenWatts wrote: I cannot figure out what I'm doing wrong. I get a "type mismatch" error on the vlookup line. Sub AutoComment() Dim abvar As String Dim mycell As Range For Each mycell In Range("B4:H27") abvar = Application.VLookup(mycell.Value, "SkillLegend!A:B", 2, False) mycell.AddComment Text:=abvar Next mycell End Sub Thank you... -- AllenWatts ------------------------------------------------------------------------ AllenWatts's Profile: http://www.excelforum.com/member.php...o&userid=34301 View this thread: http://www.excelforum.com/showthread...hreadid=541045 -- Dave Peterson |
#3
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Hi
Try this Sub AutoComment() Dim abvar As String Dim mycell As Range For Each mycell In Range("B4:H27") If mycell.Value < "" Then abvar = Application.VLookup(mycell.Value, Range("SkillLegend!A1:B10"), 2, False) mycell.AddComment Text:=abvar End If Next mycell End Sub VLookUp doen't like to search for an empty string. Just to be safe you might use abvar = Cstr(Application.VLookup(mycell.Value, Range("SkillLegend!A1:B10"), 2, False)) to force abvar to be a character string. regards Paul |
#4
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]() Thank you both! -- AllenWatts ------------------------------------------------------------------------ AllenWatts's Profile: http://www.excelforum.com/member.php...o&userid=34301 View this thread: http://www.excelforum.com/showthread...hreadid=541045 |
Reply |
Thread Tools | Search this Thread |
Display Modes | |
|
|
![]() |
||||
Thread | Forum | |||
VLOOKUP Macro? | Excel Worksheet Functions | |||
vlookup macro | New Users to Excel | |||
VLOOKUP in a macro?? | Excel Programming | |||
VLOOKUP in a Macro | Excel Programming | |||
Need a macro to do what this VLOOKUP does | Excel Programming |