Reply
 
LinkBack Thread Tools Search this Thread Display Modes
  #1   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 577
Default copy heading to each row

Hi,
Here's a problem I'm trying to solve

Background info...
I've been given several (10+) worksheets that I must now convert for use in
a database. The records are in rows but one of the key pieces of information
(the record's category field) is stored in it's own seperate row above the
records that belong in that category. Luckily, this header is bold so I think
I can iterate this column, looking for the bold proprty set to true. The
recordtext is plain (no bold, no italics).

My Plan
I want to iterate the cells in a colum, startign at the top. If I encounter
a cell with it's bold property set to true, I want to set a variable equal to
the contents of the bold cell. Then, move down to the next row and insert the
contents of the category variable to another cell. Repeat until I encounter
another bold cell or reach an empty cell. I would also like to delete the row
containing the headingas I process each worksheet.

Where can I find some sample code to assist me with this process. I have
been using VBA for several years but never in Excel. Any suggestions and/or
help is grealty appreciated.
  #2   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 35,218
Default copy heading to each row

Try this against a copy of your worksheet--it destroys the original version:

Option Explicit
Sub testme()
Dim myCell As Range
Dim myRng As Range
Dim DelRng As Range
Dim wks As Worksheet
Dim HeaderVal As Variant

Set wks = Worksheets("sheet1")
With wks
.Columns(1).Insert
Set myRng = .Range("b1", .Cells(.Rows.Count, "B").End(xlUp))

For Each myCell In myRng.Cells
If myCell.Font.Bold = True Then
HeaderVal = myCell.Value
If DelRng Is Nothing Then
Set DelRng = myCell
Else
Set DelRng = Union(myCell, DelRng)
End If
Else
myCell.Offset(0, -1).Value = HeaderVal
End If
Next myCell


If DelRng Is Nothing Then
'nothing found, so delete helper column
.Columns(1).Delete
Else
DelRng.EntireRow.Delete
End If
End With

End Sub



Scott wrote:

Hi,
Here's a problem I'm trying to solve

Background info...
I've been given several (10+) worksheets that I must now convert for use in
a database. The records are in rows but one of the key pieces of information
(the record's category field) is stored in it's own seperate row above the
records that belong in that category. Luckily, this header is bold so I think
I can iterate this column, looking for the bold proprty set to true. The
recordtext is plain (no bold, no italics).

My Plan
I want to iterate the cells in a colum, startign at the top. If I encounter
a cell with it's bold property set to true, I want to set a variable equal to
the contents of the bold cell. Then, move down to the next row and insert the
contents of the category variable to another cell. Repeat until I encounter
another bold cell or reach an empty cell. I would also like to delete the row
containing the headingas I process each worksheet.

Where can I find some sample code to assist me with this process. I have
been using VBA for several years but never in Excel. Any suggestions and/or
help is grealty appreciated.


--

Dave Peterson
  #3   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 1
Default copy heading to each row

Thanks, Dave. That worked quite well!

Scott

"Dave Peterson" wrote in message
...
Try this against a copy of your worksheet--it destroys the original
version:

Option Explicit
Sub testme()
Dim myCell As Range
Dim myRng As Range
Dim DelRng As Range
Dim wks As Worksheet
Dim HeaderVal As Variant

Set wks = Worksheets("sheet1")
With wks
.Columns(1).Insert
Set myRng = .Range("b1", .Cells(.Rows.Count, "B").End(xlUp))

For Each myCell In myRng.Cells
If myCell.Font.Bold = True Then
HeaderVal = myCell.Value
If DelRng Is Nothing Then
Set DelRng = myCell
Else
Set DelRng = Union(myCell, DelRng)
End If
Else
myCell.Offset(0, -1).Value = HeaderVal
End If
Next myCell


If DelRng Is Nothing Then
'nothing found, so delete helper column
.Columns(1).Delete
Else
DelRng.EntireRow.Delete
End If
End With

End Sub



Scott wrote:

Hi,
Here's a problem I'm trying to solve

Background info...
I've been given several (10+) worksheets that I must now convert for use
in
a database. The records are in rows but one of the key pieces of
information
(the record's category field) is stored in it's own seperate row above
the
records that belong in that category. Luckily, this header is bold so I
think
I can iterate this column, looking for the bold proprty set to true. The
recordtext is plain (no bold, no italics).

My Plan
I want to iterate the cells in a colum, startign at the top. If I
encounter
a cell with it's bold property set to true, I want to set a variable
equal to
the contents of the bold cell. Then, move down to the next row and insert
the
contents of the category variable to another cell. Repeat until I
encounter
another bold cell or reach an empty cell. I would also like to delete the
row
containing the headingas I process each worksheet.

Where can I find some sample code to assist me with this process. I have
been using VBA for several years but never in Excel. Any suggestions
and/or
help is grealty appreciated.


--

Dave Peterson



Reply
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules

Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
Select max value from 9 cells, copy cell col heading to other cell Struggling in Sheffield[_2_] New Users to Excel 6 March 11th 09 11:47 AM
col heading help Norvin Excel Worksheet Functions 2 January 11th 08 04:27 PM
how can I exclude a heading but show that heading in sheet. Hunter Excel Discussion (Misc queries) 4 January 8th 07 07:35 AM
In a table produce an value by column heading and row heading naflan Excel Worksheet Functions 1 December 27th 05 05:18 PM
copy heading to row Scott Excel Programming 0 August 4th 05 07:18 PM


All times are GMT +1. The time now is 11:11 AM.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Copyright ©2004-2025 ExcelBanter.
The comments are property of their posters.
 

About Us

"It's about Microsoft Excel"