移动数据到单个列在Excel
问题描述:
问题使用修改解答移动数据到单个列在Excel
Dim i As Long, values As Range, current As Range
Set current = Range("D4") '//select 1st anchor cell
Do Until current.Value = ""
i = i + 45
Set values = Range(current.Offset(2, 0), current.Offset(45, 0)) '//select all in the ooc column
values.Copy '//got block of data here
Sheets("Sheet1").Range("A" & i).PasteSpecial
Set current = current.Offset(0, 13) '//next page
Loop
在Excel电子表格的列C开始解决了,我有宽13列中的数据的页面。我需要将第2列和第3列中的数据传输到SQL数据库,因此我试图将每个页面上的这2列转移到彼此的顶部。
下面的截图是我正在使用的数据。我需要捕获ODC CSS服务器RowX CabX下的服务器名称及其相应的资产标签。如果我可以每隔13行拿走这两列并堆叠它们,我可以自己删除额外的信息。
Spreadsheet http://img830.imageshack.us/img830/6126/unledoks.png
我敢肯定,我并不需要提及的时间疯狂量,这将节省,但我真的可以使用一些帮助入门,或使用示例宏来做到这一点。不幸的是,我没有太多的VBA经验,但我会用我能得到的帮助。
答
那么;
dim i As Long, values as range, current As range
set current = Range("D4") '//select 1st anchor cell
do until current.Value = ""
i = i + 1
set values = range(current.offset(1, 0), current.End(xlToRight)) '//select all in the ooc column
values.copy '//got block of data here
sheets("someothersheet").range("A" & i * 2 - 1).pastespecial
set current = current.offset(0, 13) '//next page
loop
已经很接近了。它将每个页面上每列的标题正确(服务器,资产标签,pwr等),但列下的信息是(目标工作表的)第4:46行的总和,对于每个页面它增加了2(6:46,8:48等)希望这是有道理的?我会看看我能用它做什么。谢谢! –