vb如何把文本框中的数据保存到excel,不能覆盖,而是能保存到下一行,不影响前几行保存的数据

2024-12-15 22:43:37
推荐回答(2个)
回答1:

因为每执行一次该程序,会新建一个Z:\工作区\测试\测试数据保存(不合格).xls,覆盖掉原文件。
1、建议在form_load事件中在新建或打开“Z:\工作区\测试\测试数据保存(不合格).xls”,在unload事件中关闭它。在command1中仅保存(save)。这里要求Dim Ex As Object
Dim ExBook As Object
Dim ExSheet As Object
在代码最前面定义。
2、或者在新建Set ExBook = Ex.Workbooks.Add时,先判断是否存在“Z:\工作区\测试\测试数据保存(不合格).xls”,存在就用Set ExBook = Ex.Workbooks.open(Z:\工作区\测试\测试数据保存(不合格).xls)打开,同时做一个记号,在后面区别对待saveas或save。

回答2:

要修改几个地方:
1.Set ExBook = Ex.Workbooks.Add
改成:
Set ExBook = Ex.Workbooks.Open(App.Path & "\测试数据保存(不合格).xls", , False)
2.ActiveWorkbook.SaveAs ("Z:\工作区\测试\测试数据保存(不合格).xls")
改成:
ActiveWorkbook.Save (App.Path & "\测试数据保存(不合格).xls")

然后每次点击,
EXCEL中就相应增加一行。
希望对你有帮助。