close

Hi,

How / Is it possible to match entries in lists that are in a random
order and
are different lengths. There are two columns in each list and i need to
keep
rows from the same tables next to each other,

i.e.

From this

a?1 a?1
b?2 c?2
c?2 d?6
d?7

to this
a?1 a?1
b?2
c?2 c?2
d?7 d?6

Thanks in advance.--
steev_jd
------------------------------------------------------------------------
steev_jd's Profile: www.excelforum.com/member.php...oamp;userid=33107
View this thread: www.excelforum.com/showthread...hreadid=530482Are A|1 and A|1 just values in separate cells?

And shouldn't you have ended up with something like:

a?1 a?1
b?2
c?2 c?2
d?6
d?7Add a header to row 1 and try this macro that I've saved this from a few
previous posts:

Option Explicit
Sub testme()

Application.ScreenUpdating = False

Dim wks As Worksheet
Dim ColA As Range
Dim ColB As Range
Dim iRow As Long
Dim myCols As Long

Set wks = Worksheets(quot;sheet1quot;)
wks.DisplayPageBreaks = False
With wks
'row 1 has headers!
Set ColA = .Range(quot;a2quot;, .Cells(.Rows.Count, quot;Aquot;).End(xlUp))
Set ColB = .Range(quot;b2quot;, .Cells(.Rows.Count, quot;Bquot;).End(xlUp))

With ColA
.Sort key1:=.Cells(1), order1:=xlAscending, header:=xlNo
End With

'change the mycols to the number of columns that
'are associated with column B

myCols = 1 ' columns B only
With ColB.Resize(, myCols)
.Sort key1:=.Cells(1), order1:=xlAscending, header:=xlNo
End With

iRow = 2
Do
If Application.CountA(.Cells(iRow, quot;Aquot;).Resize(1, 2)) = 0 Then
Exit Do
End If

If .Cells(iRow, quot;Aquot;).Value = .Cells(iRow, quot;Bquot;).Value _
Or Application.CountA(.Cells(iRow, quot;Aquot;).Resize(1, 2)) = 1 Then
'do nothing
Else
If .Cells(iRow, quot;Aquot;).Value gt; .Cells(iRow, quot;Bquot;).Value Then
.Cells(iRow, quot;Aquot;).Insert shift:=xlDown
Else
.Cells(iRow, quot;Bquot;).Resize(1, myCols).Insert shift:=xlDown
End If
End If
iRow = iRow 1
Loop
End With

Application.ScreenUpdating = True

End Sub

If you're new to macros, you may want to read David McRitchie's intro at:
www.mvps.org/dmcritchie/excel/getstarted.htm

steev_jd wrote:
gt;
gt; Hi,
gt;
gt; How / Is it possible to match entries in lists that are in a random
gt; order and
gt; are different lengths. There are two columns in each list and i need to
gt; keep
gt; rows from the same tables next to each other,
gt;
gt; i.e.
gt;
gt; From this
gt;
gt; a?1 a?1
gt; b?2 c?2
gt; c?2 d?6
gt; d?7
gt;
gt; to this
gt; a?1 a?1
gt; b?2
gt; c?2 c?2
gt; d?7 d?6
gt;
gt; Thanks in advance.
gt;
gt; --
gt; steev_jd
gt; ------------------------------------------------------------------------
gt; steev_jd's Profile: www.excelforum.com/member.php...oamp;userid=33107
gt; View this thread: www.excelforum.com/showthread...hreadid=530482

--

Dave Peterson


Hi,

Thanks for that macro, I will try it once I have read up that link.
In answer to your questions
I have in total 4 columns of data, from two different spreadsheets,
which i have put into the same spreadsheet.
The data basically shows products and sales, they should be the same
but there are some inconsistencies.
Some products are missing from one spreadsheet or the other, and some
sales figures are differing.
Therefore I want to sort the data so i have

Coke...?...150...?...Coke...?...150.
Pepsi...?..100...?..Pepsi...?...80...
Tango.?...75....?............?.........
.........?...........?..Fanta..?...45...

and can compare at a glance, or filter for blank fields etc.

Don't know if this makes any difference??--
steev_jd
------------------------------------------------------------------------
steev_jd's Profile: www.excelforum.com/member.php...oamp;userid=33107
View this thread: www.excelforum.com/showthread...hreadid=530482

arrow
arrow
    全站熱搜
    創作者介紹
    創作者 software 的頭像
    software

    software

    software 發表在 痞客邦 留言(0) 人氣()