一个关于datagrid的十分奇怪的问题,各位高手们帮帮忙????不是我舍不得给分,而是我实在是没分,还请各位高手们多多包涵,帮帮忙,先

hallovb1 2004-08-05 05:54:00
把datagrid中的AllowAddNew,AllowArrows,AllowDelete,AllowUpdata,全部设置为true。但是还是不能对datagrid中绑定好的数据进行修改、删除。
一但对数据进行修改删除(例如,我又32行32列,对第3行、第3列的数据尽心改动)在点击其他行的数据,系统就会提示“键列信息不足或不正确。更新影响到多行。”就是不允许改动。改动同一行多个数据,在点击其他行时,系统又会提示“无法为更新定位行。一些值可能已在最后一次读取后已更改。”这是怎么回事啊???
我是把一个Excel文件导入Access中,再用datagrid来绑定Access。
...全文
82 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
Moneyabc 2004-08-07
  • 打赏
  • 举报
回复
把Excel关掉。Excel.Applicaion.Close
或Acapp.Close
DavideFiled 2004-08-06
  • 打赏
  • 举报
回复
我用SQL也遇到过你这样的问题
解决方法:
把数据库表删除,新建一个
注意;不要怕麻烦
仔细一点
hallovb1 2004-08-06
  • 打赏
  • 举报
回复
我早上做了个小试验,发现直接用datagrid和adodc绑定access是可以编辑不会发生上述的问题,所以我认为可能是我在把Excel导到access中的时候,Excel文件和Access中的那个表的连接没有断开,当我在datagrid中编辑数据的时候,access中的表要自动跟着改动,但是Excel文件又有连接不允许改动,这就发生了冲突,我的Excel转到Access的代码如下:
Dim acapp As Object
Dim adoRS As New ADODB.Recordset
Dim db As New ADODB.Connection
Dim dbpath As String
Dim xpath As String

Set acapp = CreateObject("Access.Application")
dbpath = App.Path & "\data\db1.mdb"
xpath = fileDialog1.FileName

Set acapp = GetObject(dbpath, "access.application")
acapp.DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel9, "table1", xpath
要如何才能断开它们之间的联系呢,各位高手们帮帮忙!!!!
talent303 2004-08-06
  • 打赏
  • 举报
回复
其实你可能少了标签什么的,,
null1027 2004-08-05
  • 打赏
  • 举报
回复
我也是菜鸟,如果我是你,我会先检查一下recordset对象的open语句的后面的参数。

1,453

社区成员

发帖
与我相关
我的任务
社区描述
VB 控件
社区管理员
  • 控件
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧