Solved

Macro to populate unique values into table

Posted on 2013-02-01
10
312 Views
Last Modified: 2013-02-08
Hi Experts (All worksheets same workbook)

Need a macro the well run after the data selection has been made from validation list on cell d18, worksheet "ABC"

Click macro button then >

Populate results into table below same worksheet:-
Data table on worksheet "ABC" d22:d42

The result are pull back from worksheet "data" so look in column z which corresponds to the selection made from the data validation list cell d18 worksheet "ABC"
 And return the results back from Column AB....which goes into range D22:42 in above table and values are text...

Here the tricky bit only unique values...
0
Comment
Question by:route217
  • 6
  • 4
10 Comments
 
LVL 43

Expert Comment

by:Saqib Husain, Syed
ID: 38843743
Can you upload a small sample excel file?
0
 

Author Comment

by:route217
ID: 38843750
Apologies,  ssaqibh

Unable to do to restriction .... Sorry
0
 
LVL 43

Expert Comment

by:Saqib Husain, Syed
ID: 38843758
Not even a fake sample to help understanding?
0
Free Tool: IP Lookup

Get more info about an IP address or domain name, such as organization, abuse contacts and geolocation.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

 

Author Comment

by:route217
ID: 38843765
Probably later on when I get home...
0
 

Author Comment

by:route217
ID: 38843825
Ssaqibh

Can work on something with our a workbook
0
 
LVL 43

Expert Comment

by:Saqib Husain, Syed
ID: 38844356
I would have liked to try but I am struggling to understand the description.
0
 

Author Comment

by:route217
ID: 38844516
ssaqibh

see attached workbook....with example in the worksheet - refer to txt...

I hope this helps..
Sample-Data.xls
0
 
LVL 43

Accepted Solution

by:
Saqib Husain, Syed earned 500 total points
ID: 38845945
Dim dat As Worksheet, nitems As Long, trow As Integer, cel As Range, i As Long
    Set dat = Sheets("Data")
    nitems = WorksheetFunction.CountIf(dat.Range("Z:Z"), ActiveSheet.Range("D18"))
    trow = ActiveSheet.Range("D:D").Find("Total", , , xlWhole).Row
    If trow < 22 + nitems Then
        Cells(trow, 4).Resize(22 + nitems - trow).EntireRow.Insert
    ElseIf trow > 22 + nitems Then
        Cells(22 + nitems, 4).Resize(trow - 22 - nitems).EntireRow.Delete
    End If
    Cells(22, 4).Resize(nitems).ClearContents
    trow = 22 + nitems
    Cells(21, 4) = " "
    For Each cel In dat.Range("Z1:Z" & dat.Range("Z" & Rows.Count).End(xlUp).Row)
        If cel = ActiveSheet.Range("D18") Then
            ActiveSheet.Cells(trow, 4).End(xlUp).Offset(1) = cel.Offset(, 2)
        End If
    Next cel
        Cells(21, 4).ClearContents
    For i = trow - 1 To 23 Step -1
        If Not ActiveSheet.Range("D22:D" & i - 1).Find(ActiveSheet.Cells(i, 4), , , xlWhole) Is Nothing Then
        ActiveSheet.Cells(i, 4).EntireRow.Delete
    End If
    Next i
0
 

Author Comment

by:route217
ID: 38846336
Thanks ssaqibh

Let me test the code...
0
 

Author Comment

by:route217
ID: 38868237
0

Featured Post

Free Tool: Port Scanner

Check which ports are open to the outside world. Helps make sure that your firewall rules are working as intended.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

A little background as to how I came to I design this code: Around 5 years ago I designed an add-in that formatted Excel files to a corporate standard, applying different cell colours and font type depending on whether the cells contained inputs,…
Do you use a spreadsheet like Microsoft's Excel?  Have you ever wanted to link out to a non excel file on your computer or network drive?  This is the way I found to do it!
The viewer will learn how to create two correlated normally distributed random variables in Excel, use a normal distribution to simulate the return on different levels of investment in each of the two funds over a period of ten years, and, create a …
This Micro Tutorial will demonstrate in Google Sheets how to use the HYPERLINK function to create live links inside your spreadsheet.

839 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question