Self populating worksheet.

Squirbie

New Member
Joined
Aug 6, 2013
Messages
3
I have initial data in Worksheet 1. Each row has a specified status (Submitted or Outstanding).
I'd like Worksheet 2 to self populate with certain data from only the rows that are marked as Submitted.
I'd like Worksheet 3 to self populate with certain data from only the rows that are marked as Outstanding.

My VLOOKUP formula gives me the data I need but will report results line by line...reporting the "Outstanding" data as "" in the "Submitted" Report.
And reports "Submitted" data as "" in the "Outstanding" Report.

=IF(SDI!$N19=SDI!$N$15,VLOOKUP(SDI!$D19,SDI!$D19:$N$318,1,FALSE),"")

How do I get it to only search for the status I'm specifying?

Can I use VLOOKUP in conjunction with some kind of Data Validation?
 

Excel Facts

Enter current date or time
Ctrl+: enters current time. Ctrl+; enters current date. Use Ctrl+: Ctrl+; Enter for current date & time.
If you are willing to try a macro instead of a formula, please let me know. I would need to know what column the status (Submitted or Outstanding) is in.
 
Upvote 0
Hi Squible
A macro would be a good way to go, however you could just use a pivot table, then filter the table Submitted or Outstanding, it depends on how much data you have, I have a worksheet with 10 thousand rows, and that works great in a pivot table, & is easily updated,
Regards
Pup
 
Upvote 0
I can't use a pivot table because I'm creating this form to eventually be used by many employees... and they won't know how to run pivot tables. I have to keep it as simple and user freindly as possible.
 
Upvote 0
Try this macro. It assumes that your destination sheets are named "Submitted" and Outstanding". If your actual sheet names are different, change the code to suit your needs.
Code:
Sub CopyRows()
    Dim bottomN As Integer
    bottomN = Range("N" & Rows.Count).End(xlUp).Row
    Dim rng As Range
    For Each rng In Range("N2:N" & bottomN)
        If rng = "Submitted" Then
            rng.EntireRow.Copy Sheets("Submitted").Range(Rows.Count, "A").End(xlUp).Offset(1, 0)
        ElseIf rng = "Outstanding" Then
            rng.EntireRow.Copy Sheets("Outstanding").Range(Rows.Count, "A").End(xlUp).Offset(1, 0)
        End If
    Next rng
End Sub
 
Upvote 0
Welcome to the Board!

I can't use a pivot table because I'm creating this form to eventually be used by many employees... and they won't know how to run pivot tables. I have to keep it as simple and user freindly as possible.

Why not? If you mean that they won't know how to refresh the PT's that's easily managed in the Sheet_Activate event.
 
Upvote 0

Forum statistics

Threads
1,215,467
Messages
6,124,984
Members
449,201
Latest member
Lunzwe73

We've detected that you are using an adblocker.

We have a great community of people providing Excel help here, but the hosting costs are enormous. You can help keep this site running by allowing ads on MrExcel.com.
Allow Ads at MrExcel

Which adblocker are you using?

Disable AdBlock

Follow these easy steps to disable AdBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the icon in the browser’s toolbar.
2)Click on the "Pause on this site" option.
Go back

Disable AdBlock Plus

Follow these easy steps to disable AdBlock Plus

1)Click on the icon in the browser’s toolbar.
2)Click on the toggle to disable it for "mrexcel.com".
Go back

Disable uBlock Origin

Follow these easy steps to disable uBlock Origin

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back

Disable uBlock

Follow these easy steps to disable uBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back
Back
Top