Excel资料拷贝过程中出现错误,可能哪里错了,进来帮忙分析一下。

chendjin 2005-04-28 06:13:13
俺拷贝Excel模版文件后,先后对Excel的Shee1和Shee2写数据,数据行接近1300行,两列,写完后这样调用:
......
xlBook.Save '保存资料
xlBook.Close True
xlApp.Quit
Set xlSheet = Nothing
Set xlBook = Nothing
Set xlApp = Nothing
俺觉得操作Excel的有关对象都已经释放了,拷贝目录俺拥有读写权限,可是拷贝过程中出现实时错误“75”:路径/文件访问错误。这是怎么啦?大家指导一下。
...全文
500 8 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
kyo19 2005-05-02
  • 打赏
  • 举报
回复
这是我写的一段代码,你看一下吧!
Private Sub Command4_Click()
Dim i As Integer
Dim j As Integer
Dim BT As String
Dim TimeD As String
Dim EX As Object
Dim exwbook As Object
Dim exsheet As Object
Dim Filename As String

' On Error GoTo ExErr

''' If DTPicker1 = DTPicker2 Then
''' TimeD = Format(DTPicker1, "MM-dd")
''' Else
''' TimeD = Format(DTPicker2, "MM-dd") + "到" + Format(DTPicker1, "MM-dd")
''' End If

BT = CStr(Main.SDM) + "贵宾卡查询"

If MsgBox("是否导出到Excel文件中:" + Chr(13) + Chr(10) + _
"现有表头为: " + BT + Chr(13) + Chr(10) + _
"如要修改就在<Excel表头>后输入表头内容,不用输入时间!", vbInformation + vbYesNo + vbDefaultButton2) = vbNo Then Exit Sub

Screen.MousePointer = 11

Filename = Text1.Text
Set EX = CreateObject("Excel.Application")
Set exwbook = Nothing
Set exsheet = Nothing
Set exwbook = EX.Workbooks().Add
Set exsheet = exwbook.Worksheets("sheet1")


'另外一种大片赋值
For i = 0 To MSFlexGrid1.Rows - 1
For j = 1 To MSFlexGrid1.Cols - 1
exsheet.Cells(i + 1, j).Value = MSFlexGrid1.TextMatrix(i, j)
Next j
Next i


'表头
exsheet.Columns("A:I").EntireColumn.AutoFit

'设置某区域的小数位数
exsheet.Columns("A:A").Select
EX.Selection.NumberFormatLocal = "000000"
exsheet.Columns("E:G").Select
EX.Selection.NumberFormatLocal = "0.00"

'设置置顶行
With EX.ActiveSheet.PageSetup
.PrintTitleRows = "$1:$1"
.PrintTitleColumns = ""
End With

'设置页眉页脚
EX.ActiveSheet.PageSetup.PrintArea = ""
With EX.ActiveSheet.PageSetup
.CenterHeader = "&""黑体,常规""&18" + CStr(BT)
.PrintGridlines = True
.CenterFooter = "第 &P 页,共 &N 页"
End With

'保存输入到Excel文件
exwbook.SaveAs App.Path + "\Out_File\VIP\VIP" + Filename + ".xls" ', WriteResPassword:="123"
'退出excel
EX.Quit
Screen.MousePointer = 0

'MsgBox "成功导出数据到Excel表中!", vbInformation

If MsgBox("成功将数据导出到Excel表," + Chr(13) + Chr(10) + "是否打开导出文件所在的文件夹??", vbInformation + vbYesNo + vbDefaultButton2) = vbNo Then Exit Sub
Shell "explorer.exe" + " " + App.Path + "\Out_File\VIP", vbMaximizedFocus


'Exit Sub
'ExErr:
' Screen.MousePointer = 0
' MsgBox "数据导出失败!", vbInformation
End Sub
kyo19 2005-04-29
  • 打赏
  • 举报
回复
saveas 如有同名会有个提示啊!
iStar64 2005-04-29
  • 打赏
  • 举报
回复
Excel文件在常规操作下支持覆盖同名文件
其实你最好先设计一个Temp.xls,这个里面将格式都设计好
然后每次要填数据就用filecopy函数拷贝这个excel文件,添入数据
chendjin 2005-04-29
  • 打赏
  • 举报
回复
csdn高人都潜水去了。没人知道吗?
chendjin 2005-04-29
  • 打赏
  • 举报
回复
kyo19(萧梦楚):俺的怎么没有提示啊,不过也不想有提示。
很奇怪,用API函数SHFileOperation也不能拷贝成功,俺只好先删除,再用Filecopy函数就可以了,不知是俺的系统有问题还是其他。还有俺取DataGrid当前行时总是滞后一次(总是取到前一次操作行),郁闷。
chendjin 2005-04-28
  • 打赏
  • 举报
回复
如果目标路径已经存在与待拷贝文件同名称时,使用Filecopy函数或xlBook.SaveAs app.path+"\xxx.xls"等功能时,这种“复制”、“另存为”都不起作用,难道Excel文件在常规操作下禁止覆盖同名文件?大家再讨论讨论。
kyo19 2005-04-28
  • 打赏
  • 举报
回复
可以用xlBook.SaveAs app.path+"\xxx.xls"
试一下!
chendjin 2005-04-28
  • 打赏
  • 举报
回复
拷贝用Filecopy函数.

7,785

社区成员

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

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