为了将Excel单元格中的包含汉字的字符串A$ 输出到一个使用UTF-8编码格式的外部文件,我打算用下面的函数来实现转换,但VBA运行时报告没有对象类型AdoStream,导致转换无法进行。
例如:
A$=cells(1,1)
B$= tran_ado(A$)
我在VBA中自定义了如下函数,其中AdoStream是网上说由VBA预先定义的对象类型(是真的吗?)
Function tran_ado(ByVal strA As String) As String
'这个函数利用所谓的 AdoStream对象 将保存在strA中的普通编码格式的字串转换成UTF-8格式编码的字符串,以便后边输出给VCF文件
Dim Stm As New AdoStream
Stm.Type = adTypeText
Stm.Mode = adModeUnknown
Stm.Open
Stm.Charset = "utf-8"
Stm.WriteText strA
Stm.Position = 0
Stm.Type = adTypeText
Stm.Charset = "gb2312"
tran_ado = Stm.ReadText()
Stm.Close
End Function
1, 能否说明一下 怎样连接Microsoft Jet OLE DB Provider 和 ODBC Drivers两种方式连接到 Excel 数据文件?
2. 我在Exce2010 VBA的help环境下搜索不到对 ADODB.Stream 的描述, ADODB.Stream 是EXCEL2010 中预定义的对象吗?
1楼的根本就不懂, 在网上复制过来的
有2中方法
方法1: 在VBE 窗口 工具---引用
MICROSOFT ACTIVEX DATA OBJECTS 6.1
然后定义 变量类型 Dim Stm As New ADODB.Stream
你的程序的定义 也写错了
法法2:创建对象
这个无需添加引用
Set stm = CreateObject("Adodb.Stream")
1, 能否说明一下 怎样连接Microsoft Jet OLE DB Provider 和 ODBC Drivers两种方式连接到 Excel 数据文件?
2. 能否请您对两个示范转换函数中对adoStream对象进行操作的每行代码加上注释文字? 我在Exce2010 VBA的help环境下搜索不到对 ADODB.Stream 的描述。
在excel2010 VBA找不到预定义的Ado对象
方法1: 在VBE 窗口 工具---引用 MICROSOFT ACTIVEX DATA OBJECTS 6.1 然后定义 变量类型 Dim Stm As New ADODB.Stream 你的程序的定义 也写错了 法法2:创建对象 这个无需添加引用 Set stm = CreateObject("Adodb.Stream")
excel2010 VBA 赋值时报错:“应用程序定义或对象定义错误”
你的 k=i ,所以你这相当于 Ax=Ax
excel表格2010版里面的VBA工程管理器没有对象是不是设置的问题?求大神...
EXCEL插入行和列,使用Insert方法将在指定行的上面或指定列的左侧插入一列。其语法:表达式.Insert(Shift,CopyOrigin)。4\/6 设置行高和列宽。用户有时候要对工作表的格式进行设置,RANGE的属性RowHeight和ColumnWidth分别设置行高和列宽。5\/6 设置工作表的标签颜色,Tab对象有ColorIndex属性,可以通过设置Colo...
excel VBA 运行时错误1004 应用程序定义或对象定义错误
Range("C1:C[-7]")这个错了吧
Excel VBA应用程序定义或对象定义错误
应该是这样:Sub AutoClone()Dim GetDay As LongDim iGetDay = Sheets("report").[T4]For i = 3 to 367 if range("C" & i).Value = GetDay Then Range("D" & i & "AO" & i) = Range("D" & i & "AO" & i).Value End IfNext End Sub你测试一下,我没测试...
Excel 2010怎么调用VBA?excel调用vba方法介绍
从07版开始,这个功能就被隐藏了,但隐藏方法还不太一样。步骤 1、默认情况下,打开Excel 2010的菜单栏是这样的。2、找到VBA之前,你需要把开发工具菜单调出来,选择文件,找到选项。3、在Excel选项对话框,切换到自定义功能区。4、勾选开发工具,然后点下面的确定。5、好了,如图,VBA在这里了。
excel2010怎么打开vba文件呢?
需要勾选信任VBA。解决这个问题的方法如下:1、先打开电脑上面的excel,然后点击左上角的文件。2、之后选择弹窗中的选项;3、然后点击信任中心;4、之后点击信任中心设置;5、然后点击宏设置;6、之后点击勾选上信任对VBA工程对象模型的访问,之后点击确定就可以解决这个问题了。
excel2010怎么打开vba编写的代码?
1、打开excel软件,点击左上角“文件”;2、点击选项;3、在excel选项界面点击自定义功能区,勾选开发工具,点击确定;4、开启开发工具后就可以在主菜单上看到开发工具选项卡了,需要打开VBA就在开发工具选项卡点击visual basic即可;5、写一个简单代码,在VBA窗口选择插入-模块,新建一个模块。点击模块1...
这段VBA在excel2010中运行提示‘无效的过程名’求修改
你好!对于楼主的问题,无图无真相,也就发表一下俺的看法:①程序中不含未定义的过程函数名称,如下图所示:②使用工作表时,不论是否在当前的工作表上面,最好还是声明一下。
excel宏运行找不到工程或库
1、首先检查宏中引用的对象或库文件的路径是否正确,确保路径名拼写正确,文件确实存在于指定的位置。2、其次,宏中引用的对象是其他工作簿中的内容,则确保相应的工作簿已经打开,工作簿处于关闭状态,excel无法找到其中的对象。3、然后检查宏中使用的库文件是否存在或已正确安装,在vba编辑器中,点击工具...