Andreas Hermle
asked on
copy used range of a worksheet to another worksheet using VBA
Dear Experts:
I would like to run a macro on an excel worbook with the following requirements:
1. copy the used range of worksheet 'overview' to a worksheet named 'my_custom_sets'. There are filtered rows in the 'overview' worksheet as well as blank rows. Only the visible cells are to be copied.
2. if there is already data on the 'my_custom_sets' worksheet (i.e. the macro has already been previously activated) a macro has to tell the user: "there is already data on the 'my_custom_sets' worksheet! If you continue, this data will be fully overwritten. Do you really want to do this? If the user presses 'YES' the copied and pasted data replaces the current data in the 'overview' worksheet. If the user presses 'NO' the macro is to abort.
Help is very much appreciated. Thank you very much in advance.
Regards, Andreas
I would like to run a macro on an excel worbook with the following requirements:
1. copy the used range of worksheet 'overview' to a worksheet named 'my_custom_sets'. There are filtered rows in the 'overview' worksheet as well as blank rows. Only the visible cells are to be copied.
2. if there is already data on the 'my_custom_sets' worksheet (i.e. the macro has already been previously activated) a macro has to tell the user: "there is already data on the 'my_custom_sets' worksheet! If you continue, this data will be fully overwritten. Do you really want to do this? If the user presses 'YES' the copied and pasted data replaces the current data in the 'overview' worksheet. If the user presses 'NO' the macro is to abort.
Help is very much appreciated. Thank you very much in advance.
Regards, Andreas
ASKER
uppps, Norie you are right, thank you for bringing this to my attention.
I have edited the initial question accordingly.
Thank you
I have edited the initial question accordingly.
Thank you
Sounds like you may be able to use Advanced Filter function.
Advanced Filter can be used to extract data from a data-set based on a set of criteria and copy that extracted data to another sheet.
I have also done something similar in the past using slicers. The slicers were used to apply the filters and then a routine to extract the results.
Advanced Filter can be used to extract data from a data-set based on a set of criteria and copy that extracted data to another sheet.
I have also done something similar in the past using slicers. The slicers were used to apply the filters and then a routine to extract the results.
You would need VBA for AdvancedFilter to copy the result to another page. I've posted several example and it also depends on the data layout.
ASKER
Hi Rob,
thank you very much for your help. I know what you are talking about, but in my case I would like to have a macro code
Hi Roy,
thank you very much for your post. I have searched thru your posted examples but regrettably was not able to find an appropriate one. Do you think you could help me with that?
Thank you very much to both of you for your valuable help.
thank you very much for your help. I know what you are talking about, but in my case I would like to have a macro code
Hi Roy,
thank you very much for your post. I have searched thru your posted examples but regrettably was not able to find an appropriate one. Do you think you could help me with that?
Thank you very much to both of you for your valuable help.
Andreas
When you say this
When you say this
if there is already data on the 'my_custom_sets' worksheetdo you mean if there is any data on 'my_custom_sets.
@Roy
Admittedly, in order to give the option of clearing the existing data it would need VBA. The Advanced Filter will overwrite the data but only to the extent of the replacement data; if the new filter result is smaller than the previous result it will only partially overwrite the previous set.
You would need VBA for AdvancedFilter to copy the result to another page.Not strictly true; before starting the Adv Filter wizard if you put the cursor on a different sheet to the data you can specify that sheet as the destination for the filtered result.
Admittedly, in order to give the option of clearing the existing data it would need VBA. The Advanced Filter will overwrite the data but only to the extent of the replacement data; if the new filter result is smaller than the previous result it will only partially overwrite the previous set.
As always, some sample data would be helpful. Please show the source data and the result required.
Rob
I'm sure I used that method many years ago, but it fails for me now.
Here's a simple demo workbook
AdvancedFilter_Example.xlsm
I'm sure I used that method many years ago, but it fails for me now.
Here's a simple demo workbook
AdvancedFilter_Example.xlsm
ASKER
Dear all, thank you very much for the overwhelming support and I am very sorry for the delay in getting back to you. I will now see to it during the day. Thank you very much.
ASKER
Hi Roy,
very nice piece of coding which I could come in handy under other circumstances.
In the meantime I came up with my own solution but this is really crude coding, since I used 'selection'.
If anyone of you could amend this code and give it a professional touch by using the range object, please.
Help is very much appreciated. Thank you very much in advance.
Regards, Andreas
copy_visible_cells_to_another_sheet.xlsm
very nice piece of coding which I could come in handy under other circumstances.
In the meantime I came up with my own solution but this is really crude coding, since I used 'selection'.
If anyone of you could amend this code and give it a professional touch by using the range object, please.
Help is very much appreciated. Thank you very much in advance.
Regards, Andreas
copy_visible_cells_to_another_sheet.xlsm
ASKER CERTIFIED SOLUTION
membership
Create a free account to see this answer
Signing up is free and takes 30 seconds. No credit card required.
ASKER
Dear all, thank you very much for your valuable help. I really appreciate it.
Special thanks to you Roy.
Regards, Andreas
Special thanks to you Roy.
Regards, Andreas
Pleased to help
Can you clarify which sheet you are copying from and which sheet you are copying to?
In the first part of your question it appears you want to copy from 'overview' to 'my_custom_sets' but in the second part it appears you want to copy to 'overview'.