0

現在のディレクトリにあるすべてのパブリッシャー ファイルをイメージとして保存する次のコードを開発しましたが、実行に時間がかかるようです。また、マクロが実行されている現在のファイルを除外する方法がわかりません。誰でもアイデアはありますか?

 Sub Looptest()

      Dim MyFile As String, Sep As String
      Dim objPub As Object
      Set objPub = CreateObject("Publisher.Application")
      Dim folder As String
      folder = CurDir()
    If Len(Dir(folder & "\" & "jpg", vbDirectory)) = 0 Then
        MkDir (folder & "\" & "jpg")
    End If


       Sep = Application.PathSeparator

      If Sep = "\" Then
         ' Windows platform search syntax.
         MyFile = Dir(CurDir() & Sep & "*.pub")

      Else

          MyFile = Dir("", MacID("XLS5"))
      End If

      ' Starts the loop, which will continue until there are no more files
      ' found.


      Do While MyFile <> ""
    'If MyFile = "macro.pub" Then
    'GoTo ContinueLoop
    'End If

    Dim pubApp As Publisher.Application
    Dim pubDoc As Publisher.Document
    Dim folder2 As String
    folder2 = CurDir() & Sep & MyFile


    Set pubApp = New Publisher.Application

    pubApp.Open folder2
    'pubApp.ActiveWindow.Visible = True
    num = folder2
    pubApp.ActiveDocument.Pages(1).SaveAsPicture CurDir() & Sep & "jpg" & "\" & MyFile & ".jpg"
    pubApp.Quit
             MyFile = Dir()
    'ContinueLoop:
          Loop

       End Sub

ファイル (この例では Macro.pub と呼ばれます) をスキップしようとしたことをコメントアウトしました。

どんな助けでも大歓迎です!

-Cr1kk0

4

1 に答える 1