求VB大神此代码出错的原因,以及应该怎么修改

PrivateDeclareFunctionSetWindowPos&Lib"user32"(ByValhwndAsLong,_ByValhWndInsertAfterA... Private Declare Function SetWindowPos& Lib "user32" (ByVal hwnd As Long, _
ByVal hWndInsertAfter As Long, ByVal X As Long, ByVal Y As Long, _
ByVal cx As Long, ByVal cy As Long, ByVal wFlags As Long)
Dim a As Integer
Dim xx As Long, yy As Long
Private Sub Form_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
xx = X
yy = Y
End Sub
Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
If Button = 1 Then Me.Move Me.Left + X - xx, Me.Top + Y - yy
End Sub
Private Sub Form_Load()
Set fs = CreateObject("Scripting.FileSystemObject")
f = "d:\" & "\" & Year(Date) & "年" & Month(Date) & "月" & Day(Date) & "日"
If fs.FolderExists(f) Then
MsgBox "文件夹已存在"
Else
fs.CreateFolder f
End If
App.TaskVisible = False
Timer1.Interval = 1000
a = 1
End Sub
Private Sub Label4_Click()
Timer1.Enabled = False
Timer2.Enabled = False
Timer3.Enabled = False
End Sub
Private Sub Label5_Click()
Timer1.Enabled = True
Timer2.Enabled = True
Timer3.Enabled = True
End Sub
Private Sub Label6_Click()
End
End Sub
Private Sub Label7_Click()
Shell "cmd.exe /c copy /y ""d:\数据库\sjk.dat"" G:\数据库备份\" & Label1.Caption & ".dat", vbHide
End Sub
Private Sub Timer1_Timer()
Label1.Caption = Format(Now, "YYYY年MM月DD号hh点mm分ss秒")
End Sub
Private Sub Timer2_Timer()
a = a + 1
Label2.Caption = a
If Label2.Caption = 10 Then
a = 0
Shell "cmd.exe /c copy /y ""d:\数据库\sjk.dat", f & Label1.Caption & ".dat", vbHide
End If
End Sub
Private Sub Timer3_Timer()
myval = SetWindowPos(Form1.hwnd, -1, 0, 0, 0, 0, 3)
End Sub
------------------------------------------------------------------------------------------------------------------------
Shell "cmd.exe /c copy /y ""d:\数据库\sjk.dat", f & Label1.Caption & ".dat", vbHide
此行代码出错
展开
 我来答
zdingyun
2013-08-28 · 知道合伙人软件行家
zdingyun
知道合伙人软件行家
采纳数:15429 获赞数:48180
1982年上海业余工业大学化工系毕业 现退休

向TA提问 私信TA
展开全部

Copy目标位置不明确,且语句错误:试试下面语句:

Shell "cmd.exe /c copy /y ""d:\数据库\sjk.dat"" d:\数据库\f\" & Label1.Caption & ".dat", vbHide

请修改成你正确的目标路径。以上代码调试通过在d:\数据库\f\目录夹内生成新文件。

信心安J
2013-08-28 · TA获得超过402个赞
知道小有建树答主
回答量:787
采纳率:0%
帮助的人:725万
展开全部

可能是Label1中含有空格

建议修改如此:

Private Sub Label7_Click()
    Dim strCmd As String
    strCmd = "cmd.exe /c copy /y ""d:\数据库\sjk.dat"" ""G:\数据库备份\" & Label7.Caption & ".dat"""
    'MsgBox strCmd
    Shell strCmd, vbHide
End Sub
追问
Shell "cmd.exe /c copy /y ""d:\数据库\sjk.dat", f & Label1.Caption & ".dat", vbHide
主要是此行代码出错
其中的f是创建日期文件后将sjk.dat使用cmd命令复制到f的文件里面
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
xbj_hyml
2013-08-28 · TA获得超过285个赞
知道小有建树答主
回答量:552
采纳率:100%
帮助的人:434万
展开全部
Shell "cmd.exe /c copy /y d:\数据库\sjk.dat, “ & f & Label1.Caption & ".dat", vbHide

试试...不然可能是 label 出问题了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式