Home |
Search |
Today's Posts |
|
#1
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
You should be able to use the vba IsDate function : ? isdate(" 01/10/1901 ")
If that doesn't work on your cell then there is, maybe, some extra characters preventing the convertion. - by "doesn't work", do you mean the code breaks on an error or just continue to process witout selecting that row. - select one of these 'non-working' cell, say A10 and do =len(A10) to determine length (does it match the length of the text you see) = len(trim(clear(A10))) any difference from the above length? = A10+1 add 1 day to the date ... what's the result? = "" & A10 & "<" does this have extra spaces between < and the date? -- Regards, Sébastien <http://www.ondemandanalysis.com "JoeS" wrote: Still not recognizing the dates. The text format doesn't seem to be picking up the text either. Is there a way to simply say if activecell is a date in ##/##/#### format, delete the entire row? -- Joe S "sebastienm" wrote: 1. Check the online help for the Select Case, you'll see that you can group muliple case with: Select Case ActiveCell Case "Print", "Page", "Users", "Status" ..... 2. Any way, try the follwoing: Sub test() Dim rg As Range, rgDelete As Range Dim TextValues As String Dim IsToBeDeleted As Boolean, IsInTextValues As Boolean, IsADate As Boolean Set rg = Range("A1") TextValues = "Print,Page,Users,Status" On Error Resume Next ' to prevent error when converting date TextValues = "," & TextValues & "," Do Until rg = "" rg.Select 'check for text values IsInTextValues = TextValues Like ("*," & rg.Text & ",*") 'check for a date IsADate = (CDate(rg.Text) DateValue("01/10/1901")) If Err < 0 Then Err.Clear 'Is to be deleted IsToBeDeleted = IsInTextValues Or IsADate If IsToBeDeleted Then If rgDelete Is Nothing Then 'no range in it yet Set rgDelete = rg Else 'just add to it Set rgDelete = Application.Union(rg, rgDelete) End If End If 'next cell IsADate = False IsInTextValues = False Set rg = rg.Offset(1, 0) Loop 'Delete at the end only If Not rg Is Nothing Then rg.EntireRow.Delete 'rgDelete.EntireRow.Select End If End Sub I hope this helps -- Regards, Sébastien <http://www.ondemandanalysis.com |
Reply |
Thread Tools | Search this Thread |
Display Modes | |
|
|
![]() |
||||
Thread | Forum | |||
Sumif Formula - Won't Recognize Dates | Excel Discussion (Misc queries) | |||
Modify A Macro To Recognize Case Sensitive | Excel Worksheet Functions | |||
Problem to recognize macro | New Users to Excel | |||
Problem to recognize macro | Excel Discussion (Misc queries) | |||
Having a macro recognize when an option button has been selected | Excel Programming |