Home |
Search |
Today's Posts |
#1
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
The following works as expected:
ActiveCell.Select ActiveCell.FormulaR1C1 = "km-KH: HB for TP 1 Build" Key = Left(ActiveCell, 18) Sheets("All").Select 'If Key = "Km-KH: HB for TP 1" Then Cells.Find(What:="km-KH: HO of TP 1", After:=ActiveCell, LookIn:= _ xlFormulas, LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:= _ xlNext, MatchCase:=False, SearchFormat:=False).Activate 'End If ActiveCell.Offset(0, -1).Range("A1").Select Selection.Copy Sheets("Test").Select ActiveCell.Offset(0, 1).Range("A1").Select ActiveSheet.Paste ActiveCell.Offset(0, -1).Range("A1").Select If I don't comment out the If and End If statments, it fails. Note the correct value gets assigned to the variable Key. What am I doing wrong? Any help for this novice would be greatly appreciated. |
#2
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Where is the code located?
Is it behind a worksheet or is it in a General module. Those unqualified ranges could cause problems. cells.find(..) will refer to the activesheet if the code is in a general module, but it refers to the worksheet that owns the code if the code is in a worksheet module. I'm not sure if this helps, but maybe you can use this to get further along: Dim Key As String Dim FoundCell As Range ActiveCell.Select ActiveCell.Value = "km-KH: HB for TP 1 Build" Key = Left(ActiveCell.Value, 18) With Sheets("All") Set FoundCell = .Find(What:="km-KH: HO of TP 1", _ After:=.Cells(.Cells.Count), _ LookIn:=xlFormulas, _ LookAt:=xlPart, _ SearchOrder:=xlByRows, _ SearchDirection:=xlNext, _ MatchCase:=False, _ SearchFormat:=False) If FoundCell Is Nothing Then MsgBox "Not found on All" Else FoundCell.Offset(0, -1).Copy _ Destination:=Worksheets("test").Range("a1") End If End With -------- Since you relied on the activecell on the test worksheet, I didn't know where to paste--so I pasted in A1. Rimmie wrote: The following works as expected: ActiveCell.Select ActiveCell.FormulaR1C1 = "km-KH: HB for TP 1 Build" Key = Left(ActiveCell, 18) Sheets("All").Select 'If Key = "Km-KH: HB for TP 1" Then Cells.Find(What:="km-KH: HO of TP 1", After:=ActiveCell, LookIn:= _ xlFormulas, LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:= _ xlNext, MatchCase:=False, SearchFormat:=False).Activate 'End If ActiveCell.Offset(0, -1).Range("A1").Select Selection.Copy Sheets("Test").Select ActiveCell.Offset(0, 1).Range("A1").Select ActiveSheet.Paste ActiveCell.Offset(0, -1).Range("A1").Select If I don't comment out the If and End If statments, it fails. Note the correct value gets assigned to the variable Key. What am I doing wrong? Any help for this novice would be greatly appreciated. -- Dave Peterson |
Reply |
Thread Tools | Search this Thread |
Display Modes | |
|
|
![]() |
||||
Thread | Forum | |||
VBA code for excel 2000 no longer works in excel 2007 | Excel Programming | |||
Format code no longer works | Excel Programming | |||
Code No Longer Works in 2007 | Excel Programming | |||
folderexists code no longer works after moving to excel 2003 | Excel Programming | |||
VB6 Excel 97 code no longer works if Win2K SP3/4 applied. | Excel Programming |