View Single Post
  #9   Report Post  
Posted to microsoft.public.excel.programming
Dave Peterson Dave Peterson is offline
external usenet poster
 
Posts: 35,218
Default are there any VBA consultants left ? - will pay for help

I don't see anything wrong with your code. I'm gonna guess that it's your data
that doesn't match what you want -- maybe there's an extra space
(leading/trailing) in that field.

You could check it again or write your code to eliminate those extra spaces:

With Worksheets(strSheetName)
For iDSLineCounter = 1 To 20
If Trim(LCase(.Cells(4 + iDSLineCounter, 10).Value)) _
= LCase("Y") Then
' *** Copy Bed Number
.Cells(4 + iDSLineCounter, 1).Copy
Worksheets("Isolation").Cells(5 + iListCounter, 3).PasteSpecial
_
Paste:=xlPasteValues, Operation:=xlNone, _
SkipBlanks:=True, Transpose:=False
' *** Copy Patient Name
.Cells(4 + iDSLineCounter, 2).Copy
Worksheets("Isolation").Cells(5 + iListCounter, 4).PasteSpecial
_
Paste:=xlPasteValues, Operation:=xlNone, _
SkipBlanks:=True, Transpose:=False
iListCounter = iListCounter + 1
End If
Next iDSLineCounter
end with

(I added trim() and compared using lcase() on both sides of the comparison
operator.)

The with/end with saves some typing and (I think) makes it easier to read.

DonJ_Austin wrote:

Thanks to EVERYONE who reponded. To those who suggested I post more
information here, the issue is not one of syntax. When the code below is
executed, the condition is true (double-checked) but the conditional code is
not run. This same routine (and more) have been working in another place
with only one variable change, and that is been checked for existence and
spelling.

I will be following up with those who provided contact info so I can deliver
the program in question.

For iDSLineCounter = 1 To 20
If Sheets(strSheetName).Cells(4 + iDSLineCounter, 10) = "Y" Or _
Sheets(strSheetName).Cells(4 + iDSLineCounter, 10) = "y" Then

' *** Copy Bed Number
Sheets(strSheetName).Cells(4 + iDSLineCounter, 1).Copy
Sheets("Isolation").Cells(5 + iListCounter, 3).PasteSpecial
Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=True, Transpose:=False
' *** Copy Patient Name
Sheets(strSheetName).Cells(4 + iDSLineCounter, 2).Copy
Sheets("Isolation").Cells(5 + iListCounter, 4).PasteSpecial
Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=True, Transpose:=False

iListCounter = iListCounter + 1
End If

Next iDSLineCounter

"Rick Rothstein" wrote:

If the "fix" is not too extensive, we might be able to handle it here for
you at no cost. Can you provide more information so we can see what you
actually need?

--
Rick (MVP - Excel)



"DonJ_Austin" wrote in message
...
These forums are great, but I really need some help quickly with something
that I MUST fix. How can I find someone within hours who can help
troubleshoot (Excel 2007 / VBA) for money ?


.


--

Dave Peterson