Data Search

A

amboo_radley

I am new to Visual Basic Programming. I need to write a macro that will
search through a large set of data and labels to find the data I need and
report it into an organized form on another worksheet in the same workbook.
This is a part of what the data looks like:

LA BEL: M_ITEM- 12_REAR_1
Po ints Taken: 1
Actual Nominal #NAME? #NAME? Dev Out/Tol
Y: 362.3872 362.7 0.7 -0.7 -0.3128 **********


LA BEL: C_ITEM- 12_FRONT_2
Actual Nominal #NAME? #NAME? Dev Out/Tol
Y: 342.0504 342.5 0.7 -0.7 -0.4496 **********
L: 376.074 342.5


I need the macro to ignore all the text and find the data under the "Actual"
column that has an associated numeric value in the column that is labeled
"#NAME?" and copy that value into a cell on another worksheet. The macro
should continue running until the data ends. Can anyone help me write a
macro that will do this?
 
J

Joel

I don't know if I got the columns correct. the code looks down column B for
the word Actual. Then starts looking at each row of number until it finds an
empty cell in column B. If it finds an empty cell in column b it again looks
for the work actual beffore looking at the numbers again.

When it looks at the number in column b it checks for data in column D and
if there is data it will copy column D to sheet 2.


Enum FindState
FindActual = 1
FindData = 2
End Enum
Sub ExtractData()

NewRow = 1
With Sheets("Sheet1")
State = FindActual
LastRow = .Range("B" & Rows.Count).End(xlUp).Row
RowCount = 1
State = FindActual
For RowCount = 1 To LastRow

Select Case State
Case FindActual:
If UCase(.Range("B" & RowCount)) = "ACTUAL" Then
State = FindData
End If
Case FindData
If .Range("B" & RowCount) = "" Then
State = FindActual
Else
If .Range("D" & RowCount) <> "" Then
Sheets("Sheet2").Range("A" & NewRow) = .Range("D" &
RowCount)
NewRow = NewRow + 1
End If
End If
End Select
Next RowCount
End With
End Sub
 
B

bhbjk1

Joel

Would your post below work in my situation?

I am using Visual 6.5

I am trying to get my worksheet to find the match of a number in column SUPC
on workbook 1, in a SUPC column in workbook 2. When it finds that number, I
want to to return the number in Price column of workbook 2 into Cost column
on worksheet 1. I think it would go something like this

Workbook 1
A B C
SUPC LB/CS COST
4773214 LB
4937397 LB


Workbook 2
A B C D E F
SUPC ITEM # SIZE ITEM_DESCRIPTION CS Price
4773214 2911284 LB 12.45
4937397 2611212 LB 12.51

Can anyone help here.
 
J

Joel

Sub GetPrice()

With Workbooks("Workbook1.xls").Sheets("Sheet1")
RowCount = 1
Do While .Range("A" & RowCount) <> ""
SUPC = .Range("A" & RowCount)
With Workbooks("Workbook2.xls").Sheets("Sheet1")
Set c = .Columns("A").Find(what:=SUPC, _
LookIn:=xlValues, lookat:=xlWhole)
End With
If Not c Is Nothing Then
.Range("C" & RowCount) = c.Offset(0, 4)
End If
RowCount = RowCount + 1
Loop
End With
End Sub
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top