ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Discussion (Misc queries) (https://www.excelbanter.com/excel-discussion-misc-queries/)
-   -   VBA code for Extracting Data but order of columns changes all the (https://www.excelbanter.com/excel-discussion-misc-queries/182824-vba-code-extracting-data-but-order-columns-changes-all.html)

confused

VBA code for Extracting Data but order of columns changes all the
 
I have a standard template with fields (worksheet 1) that I need to populate
data with from another worksheet (worksheet 2). The problem is in worksheet
2 the order of the columns will always be different or sometimes the column
name may not exist. Is there a vba code that will compare the column
headings of worksheet 1 and 2 and if the heading exists in worksheet 2, then
that matching column in worksheet 1 will be populated? There are
approximately 30 columns in worksheet 1 to populate.

any help is much appreciated!!
Thanks.

Barb Reinhardt

VBA code for Extracting Data but order of columns changes all the
 
I prefer to do this by defining a named range in both workbooks that match
and then no matter which column it's in, you can find the data.

myCol = 0
myCol = myWS.Range("Column1Name").Column

would be how you'd access it.

You could do something like

IF myCol 0 then ...
Populate the second worksheet
end if
--
HTH,
Barb Reinhardt



"Confused" wrote:

I have a standard template with fields (worksheet 1) that I need to populate
data with from another worksheet (worksheet 2). The problem is in worksheet
2 the order of the columns will always be different or sometimes the column
name may not exist. Is there a vba code that will compare the column
headings of worksheet 1 and 2 and if the heading exists in worksheet 2, then
that matching column in worksheet 1 will be populated? There are
approximately 30 columns in worksheet 1 to populate.

any help is much appreciated!!
Thanks.


confused

VBA code for Extracting Data but order of columns changes all
 
By defining named ranges in both worksheets, you mean named ranges for each
matching columns?

Can you further explain the what you mean by the below:

IF myCol 0 then ...
Populate the second worksheet
end if


What would I put in after the word "then" in the first line?
And do I need to put anything after "end if" or will the code end on that
command?

Thanks for your help!

"Barb Reinhardt" wrote:

I prefer to do this by defining a named range in both workbooks that match
and then no matter which column it's in, you can find the data.

myCol = 0
myCol = myWS.Range("Column1Name").Column

would be how you'd access it.

You could do something like

IF myCol 0 then ...
Populate the second worksheet
end if
--
HTH,
Barb Reinhardt



"Confused" wrote:

I have a standard template with fields (worksheet 1) that I need to populate
data with from another worksheet (worksheet 2). The problem is in worksheet
2 the order of the columns will always be different or sometimes the column
name may not exist. Is there a vba code that will compare the column
headings of worksheet 1 and 2 and if the heading exists in worksheet 2, then
that matching column in worksheet 1 will be populated? There are
approximately 30 columns in worksheet 1 to populate.

any help is much appreciated!!
Thanks.


confused

VBA code for Extracting Data but order of columns changes all
 
Will this work even if I copy and paste a new file into the worksheet,
therefore the order of the columns will change?

Please let me know if I am not being clear.

"Barb Reinhardt" wrote:

I prefer to do this by defining a named range in both workbooks that match
and then no matter which column it's in, you can find the data.

myCol = 0
myCol = myWS.Range("Column1Name").Column

would be how you'd access it.

You could do something like

IF myCol 0 then ...
Populate the second worksheet
end if
--
HTH,
Barb Reinhardt



"Confused" wrote:

I have a standard template with fields (worksheet 1) that I need to populate
data with from another worksheet (worksheet 2). The problem is in worksheet
2 the order of the columns will always be different or sometimes the column
name may not exist. Is there a vba code that will compare the column
headings of worksheet 1 and 2 and if the heading exists in worksheet 2, then
that matching column in worksheet 1 will be populated? There are
approximately 30 columns in worksheet 1 to populate.

any help is much appreciated!!
Thanks.



All times are GMT +1. The time now is 10:01 AM.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com