Excel vba - 保存为pdf和vba ftp upload - 上传看起来很有趣

时间:2018-04-13 23:01:45

标签: excel vba ftp

嗨,我真的无法理解这一点。我在vba中有一个代码,将活动工作表保存为pdf。这是正常工作的pdf看起来不错!然后代码继续,它创建一个脚本,然后将pdf上传到服务器。上传也有效但是,当我在服务器上打开文件时,99%的文本都没有。我已经尝试手动上传文件,这是从脚本创建的,并且有效。那么发生了什么? ftp脚本如何在上传时从pdf中删除99%的文本?我还尝试过不使用活动工作表并设置计时器,以防文件未完成创建。但那不是问题。感觉就像上传转换pdf这可能是真的吗? 希望有人有一个好的答案。

更新! - 代码正在运行

以下是我使用的代码:

 '''create pdf File
ThisWorkbook.Sheets("Course_rates_print1").Select

 ActiveSheet.ExportAsFixedFormat _
    Type:=xlTypePDF, _
    Filename:="E:\Kunder-i-brug\PSC\office-software\rates-now.pdf", _
    Quality:=xlQualityStandard, _
    IncludeDocProperties:=True, _
    IgnorePrintAreas:=False, _
    OpenAfterPublish:=False




Application.Wait (Now + TimeValue("00:00:20"))

 ''''''''write script.dat and upload.dat file
Set fs = CreateObject("Scripting.FileSystemObject")
Set a = fs.CreateTextFile("E:\Kunder-i-brug\PSC\office-software\script.dat", True)
a.writeline "username" 
a.writeline "password"
a.writeline "Binary"
a.writeline "mput E:\Kunder-i-brug\PSC\office-software\rates-now.pdf" 'file to be uploaded
a.writeline "quit"
a.Close

Set fs = CreateObject("Scripting.FileSystemObject")
Set a = fs.CreateTextFile("E:\Kunder-i-brug\PSC\office-software\upload.bat", True)
a.writeline "ftp -i -s:E:\Kunder-i-brug\PSC\office-software\script.dat 
ftp.server" 'the ftp site
a.Close


dRetVal = Shell("E:\Kunder-i-brug\PSC\office-software\upload.bat", 0) 
'upload the file
 ''''''''''end upload.bat file

Application.ScreenUpdating = True

0 个答案:

没有答案