On Oct 24, 3:47*am, James Ravenswood <james.ravensw...@gmail.com>
wrote:
> On Oct 23, 5:13*pm, prkhan56 <prkha...@gmail.com> wrote:
>
>
>
>
>
> > On Oct 23, 10:49*pm, James Ravenswood <james.ravensw...@gmail.com>
> > wrote:
>
> > > On Oct 23, 11:53*am, prkhan56 <prkha...@gmail.com> wrote:
>
> > > > Hello All,
> > > > I am using Excel 2007 and have a workbook with many sheets
>
> > > > There are many Pictures on each sheet and Data is in Column B on all
> > > > the sheets.
>
> > > > The data is repeated in the same format every 6th row For eg.
> > > > B1 * * *Value is in ##.## formatted as hh:mm
> > > > B2 * * *Normal Text <<<< I want to retrain this row and delete all other
> > > > Rows.
> > > > B3 * * *Name eg ABCD (same for every set of Data)
> > > > B4 * * *Text in Arial Font and Black Color (varies in length)
> > > > B5 * * *Text in Arial Font and Black Color (varies in length)
> > > > B6 * * *Text in Arial Font and Black Color (varies in length)
> > > > B7 * * *same as above
> > > > B8 * * *same as above
> > > > B9 * * *same as above
> > > > B10 * * same as above
> > > > B11 * * same as above
> > > > B12 * * same as above
> > > > ...... *.... ...... * .....
> > > > B13-B18 as above
> > > > B19-24 *as above
>
> > > > I use the following macro to delete all the pics from all the
> > > > worksheets which works ok.
> > > > Sub deleteAllPics()
> > > > Dim wks As Worksheet
> > > > Dim myPict As Object
> > > > For Each wks In ThisWorkbook.Worksheets
> > > > * * * * For Each myPict In wks.Pictures
> > > > * * * * * * * * myPict.Delete
> > > > * * * * Next myPict
> > > > * * * * Next wks
> > > > Set wks = Nothing
> > > > End Sub
>
> > > > I want a macro (I guess 3 macros??, a single macro??) *to Find and
> > > > Delete Rows for the following conditons on all the Sheets
> > > > a) Delete Rows where the Cell Format is ##.## formatted hh:mm - to
> > > > take care of B1 in the above example
> > > > b) Delete Rows where the Cell Value is = ABCD - to take care of B3 in
> > > > the above example
> > > > c) Delete Rows where the Cell Format is Arial Font and Font Color is
> > > > Black - to take care of B4,B5,B6 in the above example
>
> > > > After the macro is run I need to have only Rows with Normal Text (as
> > > > shown in the example above)
>
> > > > Any help would be greatly appreciated
> > > > TIA
> > > > Rashid Khan
>
> > > Hi Rashid:
>
> > > Here is something you can use as a model:
>
> > > Sub RowKiller()
> > > Dim boo As Boolean, EndOfB As Long, rKill As Range
> > > Dim i As Long
> > > Set rKill = Nothing
> > > EndOfB = Cells(Rows.Count, "B").End(xlUp).Row
> > > For i = 1 To EndOfB
> > > * * With Cells(i, "B")
> > > * * boo = (.NumberFormat = "hh:mm") Or (.Value = "ABCD") Or
> > > (.Font.Name = "Arial" And .Font.ColorIndex = 1)
> > > * * If boo Then
> > > * * * * If rKill Is Nothing Then
> > > * * * * * * Set rKill = Cells(i, "B")
> > > * * * * Else
> > > * * * * * * Set rKill = Union(rKill, Cells(i, "B"))
> > > * * * * End If
> > > * * End If
> > > * * End With
> > > Next
> > > If rKill Is Nothing Then
> > > Else
> > > * * rKill.EntireRow.Delete
> > > End If
> > > End Sub- Hide quoted text -
>
> > > - Show quoted text -
>
> > Hi James,
> > Your macro does only the last part i.e delete Rows with Arial Font and
> > Text Black
>
> > It does not delete rows with the text ABCD or Rows with hh:mm format
> > even if I re-run the macro
>
> > Also I wish to run the code on all the sheets in the workbook please
>
> > Thanks for your time- Hide quoted text -
>
> > - Show quoted text -
>
> It may be a line wrap problem in my post. *Make sure the boo= is all
> one line, not two.- Hide quoted text -
>
> - Show quoted text -
Hi James,
I kept the boo= in one line... it still does not work.
It seem while executing from down upwards it does the first part and
misses the other two conditions.
Any clue?
Thanks for your time once again
Rashid
|