Link to home
Create AccountLog in
Avatar of Chaitu235
Chaitu235

asked on

Need vbcode to paste data from one worksheet

Need to copy data from one worksheet to another based on Particular value in the Cell.I am attaching the format and how the copy should work.

I have three worksheets named Report,Posted and Pending

On the Report work sheet i will have two cells with values (Posted and Pending respectively).

The data from Posted worksheet has to get copied below the Posted Cell and Pending has to be pasted below the Pending Cell

The Cell numbers of posted and pending is dynamic and will vary from report to report

I am attaching the format of the report .It would be great if someone can provide me a vb code which does this.

Thanks,
Chaitu235
TEST_FORMAT_REPORT.xlsx
Avatar of Saqib Husain
Saqib Husain
Flag of Pakistan image

Try

Sub collectpostedpending()
    Dim typ As Variant
    For Each typ In Split("Posted,Pending", ",")
        Sheets(typ).Cells.Find("Name", , , xlPart).CurrentRegion.Copy
        ActiveSheet.Cells.Find(typ, , , xlPart).Offset(1).Insert Shift:=xlShiftDown
    Next typ
End Sub
Avatar of Chaitu235
Chaitu235

ASKER

Can you explain what is typ here?
Did it work?

typ is a variable to do the process
once with posted
and then with pending
It worked on the dummy sheet i sent....the requirements have changed

1) The requirement is Everytime data is copied the contents have to be cleared in the Report Sheet under Posted and pending cells Respectively.
2) The data has to get copied to Report worksheet only when Report sheet is active.

I am atatching an updated version of the spreadsheet I received from my user.can you please help me on this .

Thanks
TEST_FORMAT_REPORT.xlsx
Please take a look at the updated spreadsheet and let me know if you have any solution.
Try

Sub collectpostedpending()
Dim typ As Variant
For Each typ In Split("Posted,Pending", ",")
    Sheets(typ).Cells.Find("*", , , xlPart).CurrentRegion.Copy
    ActiveSheet.Cells.Find(typ, , , xlPart).Offset(1).Insert Shift:=xlShiftDown
Next typ
End Sub
I want to clear the contents in the report tab everytime the data is pasted there can you please help on that..
ASKER CERTIFIED SOLUTION
Avatar of Saqib Husain
Saqib Husain
Flag of Pakistan image

Link to home
membership
Create a free account to see this answer
Signing up is free and takes 30 seconds. No credit card required.
See answer
Excellent work .Thanks for the help
Syed, When the data is copied it has to get copied from 2nd row and not first row onwards.can you tell me what needs to be done to achieve this.
Try

currentregion.offset(1).copy

instead of

currentregion.copy
Hi Syed,

I have a question for you..if i have a formula on Column B on the starting cell i want that formula to apply for every cell in that column when data gets pasted .Can you tell me how can i achieve that.
Can you be a bit more specific.

Where is the formula
What is changed
Where to paste the formula
the formula will be there on the main tab where the data will get copied it will be there on say H  column.We are pasting data from A to G columns.The formula on H will do a vlookup based on value in A column.

Now if i have the formula on say H1 cell and paste the data in A to G columns on 20 cells .I want to know if the formula which i have on H1 can be automated to be executed till H20 .

Please let me know.

Thanks,
Chaitu235
Syed i have a question.I wrote the macro code you provided on Worksheet_activate.Can you please let me know how to activate the sheet by default in the code so that the user need not click the Report sheet for the copy to happen