ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
查看: 3974|回复: 8

[已解决] insert into插入数据到其他工作簿中提示“不能更新,数据库或对象为只读”如何解决?

[复制链接]

TA的精华主题

TA的得分主题

发表于 2017-7-8 18:08 | 显示全部楼层 |阅读模式
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
本帖最后由 zhang880113 于 2017-7-9 07:50 编辑

[V5C9YVBEBO`SLQV]T~${8K.png insert into插入数据到其他工作簿中提示“不能更新,数据库或对象为只读”如何解决?

TA的精华主题

TA的得分主题

 楼主| 发表于 2017-7-8 18:28 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2017-7-8 19:57 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
zhang880113 发表于 2017-7-8 18:28
顶一下,求帮忙!

上传有关附件方便大家帮你解决。

TA的精华主题

TA的得分主题

 楼主| 发表于 2017-7-8 20:05 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
chxw68 发表于 2017-7-8 19:57
上传有关附件方便大家帮你解决。

数据 - 副本.rar (116.96 KB, 下载次数: 23) 老师你好,帮忙看下,谢谢!

TA的精华主题

TA的得分主题

 楼主| 发表于 2017-7-8 20:31 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
chxw68 发表于 2017-7-8 19:57
上传有关附件方便大家帮你解决。

Sub 从工作表中向工作表插入纪录()
    Dim cnn As Object, rs As Object, SQL$
    Set cnn = CreateObject("ADODB.Connection")
    cnn.Open "Provider=Microsoft.Ace.OLEDB.12.0;Extended Properties='Excel 12.0;imex=0';Data Source=" & ThisWorkbook.Path & "\数据库.xlsx"
    SQL = "INSERT INTO [Sheet1$] SELECT 序号,姓名,cdate(CDbl(cdate(日期))) as 日期 FROM [Excel 12.0;Database=" _
        & ThisWorkbook.FullName & ";].[Sheet1$" & Range("A1").CurrentRegion.Address(0, 0) & "]"
    Set rs = cnn.Execute(SQL)
    MsgBox "数据已录入到数据库。", vbInformation
    cnn.Close
    Set rs = Nothing
    Set cnn = Nothing
End Sub
在网上找了段代码和我要的是一样的原理,但是我这不能用。不知道是什么情况。

TA的精华主题

TA的得分主题

发表于 2017-7-8 20:44 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
  1. Sub 插入数据()
  2.   Set Cnn1 = CreateObject("ADODB.connection")
  3.   Cnn1.Open "Provider=Microsoft.ACE.OLEDB.12.0;Extended Properties='Excel 12.0;';Data Source=" & ThisWorkbook.Path & "\数据库.xlsx"
  4.   SQL = "insert into [数据$] select * from [Excel 12.0;Database=" & ThisWorkbook.FullName & "].[统计表-设计$a3:k1000]"
  5.   Cnn1.Execute SQL
  6.   Cnn1.Close
  7.   Set Cnn1 = Nothing
  8. End Sub
复制代码

评分

2

查看全部评分

TA的精华主题

TA的得分主题

发表于 2017-7-8 20:45 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2017-9-20 16:54 | 显示全部楼层
insert into

补充内容 (2018-10-28 08:52):
跨薄

TA的精华主题

TA的得分主题

发表于 2018-7-25 11:57 | 显示全部楼层

大侠,请教下,如果把EXCEL数据批量导入到ORACLE数据库,同样的代码,我修改了连接字符串,为什么就不行呢,提示表名不存在?
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-11-22 08:07 , Processed in 0.046262 second(s), 11 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

快速回复 返回顶部 返回列表