View Single Post
  #7   Report Post  
Posted to microsoft.public.excel.programming
Rick Rothstein Rick Rothstein is offline
external usenet poster
 
Posts: 5,934
Default How change cell to another character, add comma, & continue ne

That might mean you data is located in different columns than I assumed. I
figured you used columns A thru J for you data and that data started on Row
2. Did you?

--
Rick (MVP - Excel)


"ILoveMyCorgi" wrote in message
...
Thanks. I copied the code and tried to run but I got a run-time error
'9':
Subscript out of range.

"Rick Rothstein" wrote:

How about this macro then (change the two worksheet references in the two
With Worksheets(...) statements to the worksheets where your data is and
where you output should go...

Sub ProcessPerColumns()
Dim X As Long
Dim Z As Long
Dim LenOutput As Long
Dim LastRow As Long
Dim LastOutputRow As Long
Dim Output As String
With Worksheets("DataSheet")
LastRow = .Cells(.Rows.Count, "A").End(xlUp).Row
For X = 2 To LastRow
Output = .Cells(X, "A") & " " & .Cells(X, "B") & " "
LenOutput = Len(Output)
For Z = 3 To 10 'Columns C thru J
If .Cells(X, Z).Value = "T" Then
If Len(Output) LenOutput Then Output = Output & ", "
Output = Output & .Cells(X, Z).Value
End If
Next
With Worksheets("OutputSheet")
LastOutputRow = .Cells(.Rows.Count, "A").End(xlUp).Row
.Cells(LastOutputRow + 1, "A").Value = Output
End With
Next
End With
End Sub

--
Rick (MVP - Excel)


"ILoveMyCorgi" wrote in message
...
Thanks. This will work, but I was looking for a VBA solution so that
when
I
extract the data, the clerk can run the extract.

"Rick Rothstein" wrote:

It is unclear whether where you want this output at. Since you posted
to
the
programming group, one could assume you are looking for VBA code; but,
if
you are, where do you want the outcome placed... in an array, in
another
cell, somewhere else? Personally, I think you are looking for a
worksheet
formula (microsoft.public.excel.worksheet.functions would have been a
better
newsgroup to use if that is the case); but again, where do you want
the
output... in a new column or to replace the contents of C:J for each
row?
Anyway, assuming you want a formula, and using a new column (same row
as
the
data), this formula can be used as a starting point...

=A2&" "&TEXT(B2,"mm/dd/yyyy")&" "&SUBSTITUTE(TRIM(IF(C2="T","0","")&
" "&IF(D2="T",1,"")&" "&IF(E2="T",2,"")&" "&IF(F2="T",3,"")&" "&IF(
G2="T",4,"")&" "&IF(H2="T",5,"")&" "&IF(I2="T",6,"")&" "&IF(J2="T",
7,""))," ",",")

Copy it down as needed.

--
Rick (MVP - Excel)


"ILoveMyCorgi" wrote in
message
...


"ILoveMyCorgi" wrote:

I have an Excel spreadsheet that has as a header row: #, Date,
Per0,
Per1,
Per2, Per3, Per4, Per5, Per6, Per7. The rows below have the
number,
date,
then for Per0 through Per7 may have a T in the cell. Sometimes the
cell
may
have another character other than a T. What I need to do is take
the
T
and
change it to, let's say a 3 [for Per3] then add a comma and
continue
to
the
next cell [if there is another T] and add, hypothetically a 5 for
Per5...
and
so on until the end of the rows with a number and date.

The outcome shoudl look like:

12345 09/25/2008 3,5
If anyone can help
me, I'd appreciate it. Hope you have a great day and a good
weekend....
ILoveMyCorgi