我是VBA的新手,我正试图弄清楚如何在没有硬编码的情况下颠倒所选列范围的顺序.我查看的每个示例要么硬编码列以反转顺序,要么假设您要反转工作表中的所有列.我不是想让别人为我写这个,但这很简单,只要有人解释我错过了什么,我就应该没问题.
有人有建议吗?
您可以使用sort来执行此操作.
使用此方法,您可以按照任何方式排列列.
如果您的数据如下所示:
A B C 1 header1 header2 header3 2 dataA dataE dataI 3 dataB dataF dataJ 4 dataC dataG dataK 5 dataD dataH dataL
在第一行添加一些数字:
A B C 1 1 2 3 2 header1 header2 header3 3 dataA dataE dataI 4 dataB dataF dataJ 5 dataC dataG dataK 6 dataD dataH dataL
然后使用sort,没有标题行,然后选择从左到右而不是从上到下排序的选项.
按行1排序,降序:
A B C 1 3 2 1 2 header3 header2 header1 3 dataI dataE dataA 4 dataJ dataF dataB 5 dataK dataG dataC 6 dataL dataH dataD
如果要编写脚本,请使用选项按行而不是按列排序.
我在这里写了一个.vbs:
http://gallery.technet.microsoft.com/ScriptCenter/en-us/f6085342-a1ae-49d8-acfc-38368256ee42?lc=1033