编写vb代码,一个excel工作表有很多sheet,把所有sheet的第二列删除,然后把所有sheet的第一列插入到第三
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了编写vb代码,一个excel工作表有很多sheet,把所有sheet的第二列删除,然后把所有sheet的第一列插入到第三相关的知识,希望对你有一定的参考价值。
编写vb代码,一个excel工作表有很多sheet,把所有sheet的第二列删除,然后把所有sheet的第一列插入到第三列的前面。
如图:前
后:
希望大神帮帮我
到Excel中自定义一个宏,删除整列,插入一空列,再把A列复制过去,等等。然后查看一个宏代码应用到VB6中去。
我给你整好了:
Private Sub Command1_Click()Dim wkBook As Workbook
Set wkBook = excel.Application.Workbooks.Open("C:\\Users\\Administrator\\Desktop\\Book1.xlsx")
Dim st As Worksheet
For Each st In wkBook.Sheets
With st
.Columns("B:B").Delete Shift:=xlToLeft
.Columns("C:C").Insert Shift:=xlToRight, CopyOrigin:=xlFormatFromLeftOrAbove
.Columns("A:A").Cut Destination:=.Columns("C:C")
.Columns("A:A").Delete Shift:=xlToLeft
End With
Next
wkBook.Save
wkBook.Close
End Sub
别忘了,引用 Microsoft Excel Object Library 库
参考技术B Sub aaa()For i = 1 To Sheets.Count
With Sheets(i)
.Columns(4).EntireColumn.Insert
.Range("a:a").Copy [d1]
.Columns("A:B").Delete Shift:=xlToLeft
End With
Next
End Sub追问
请问下怎么从第二个sheet开始 后面每个sheet的 第二列都没有呢?
求大神帮帮 肯定加分!!谢谢了
恩恩 这个我知道 我只需要代码
关于VB中CreateObject 函数
我看到VB的MSDN中,有这样一段代码
Dim ExcelSheet As Object
Set ExcelSheet = CreateObject("Excel.Sheet")
按理Excel应该是应用程序名,Sheet应该是类,但我在对象浏览器中,选择库为excel,在类中,可以看到有sheets,没有sheet,这样的话这条代码CreateObject("Excel.Sheet")岂不是有问题吗?因为excel中应该没有Sheet类,只有sheets类。但当我将这句代码Set ExcelSheet = CreateObject("Excel.Sheet")改为Set ExcelSheet = CreateObject("Excel.Sheets"),在调试时显示“实时错误429 ActiveX部件不能创建对象”
2、CreateObject函数语法 :CreateObject(class,[servername]) ;
3、CreateObject参数简介 :
class必需的;
Variant (String). 要创建的应用程序名称和类;
servername可选的;
Variant (String). 要在其上创建对象的网络服务器名称。
4、CreateObject函数应用 :
每个支持自动化的应用程序都至少提供一种对象类型。例如,一个字处理应用程序可能会提供 Application 对象,Document 对象,以及 Toolbar 对象。 要创建 ActiveX 对象,只需将 CreateObject 返回的对象赋给一个对象变量: ’声明一个对象变量来存放该对象’的引用。Dim as Object 采用后期绑定方式。
Dim ExcelSheet As Object
Set ExcelSheet = CreateObject("Excel.Sheet") 参考技术A '声明一个对象变量来存放该对象
'的引用。Dim as Object 采用后期绑定方式。
Dim ExcelSheet As Object
Set ExcelSheet = CreateObject("Excel.Sheet")
是在createobject函数看到的吧,不过我怎么在对象浏览器中只能看到sheet,看不到sheets呢?本回答被提问者采纳
以上是关于编写vb代码,一个excel工作表有很多sheet,把所有sheet的第二列删除,然后把所有sheet的第一列插入到第三的主要内容,如果未能解决你的问题,请参考以下文章
excel 如何替换单元格引用工作簿名称,例如sheet1中有单元格=sheet2!B2,如何用VB全部替换为=sheet3!B2。