您好
我正在尝试通过命令
ALTER TABLE [MyTable] ADD COLUMN Field_dest nvarchar
但执行命令时出现异常“无效操作”
我在最后尝试了有和没有$的表名,但得到了相同的结果
我的问题是
1)上面的命令有问题吗?
2)excel表是否支持命令ALTER表?
3)是否将列添加到Excel工作表的替代方法 - 最好通过OLEDB?
提前致谢
答案 0 :(得分:3)
更改表格不起作用,但AFAIK可以创建表格或选择进入,这将允许您创建新表格。我无法让这张照片打开。
Dim cn As Object
Dim scn As String
Dim sSQL As String
strFile = "C:\Docs\test.xls"
scn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & _
strFile & ";Extended Properties=""Excel 8.0;HDR=Yes;"""
Set cn = CreateObject("ADODB.Connection")
cn.Open scn
''Note that there is no $ on the sheet to be created
sSQL = "SELECT *,'' As NewField INTO [Sheet17] FROM [Sheet4$]"
''Jet data types
sSQL = "CREATE TABLE [Sheet8] (AText text, ANother text)"
cn.Execute sSQL
如果针对打开的文件运行,则会出现Sheetn不存在的错误。
答案 1 :(得分:0)
您可以使用“创建表”而不是“更改表”。 只需使用现有的表名称,然后您的列就会添加到现有的表格
CREATE TABLE [ExistingSheet$] (ID char(255), oldField1 char(255), newField2 char(255))
这是工作!