特定のブックを開くと、VBAマクロが実行を停止します。私がブレークモードでコードを実行すると、新しく開いたワークブックに制御が行き渡って、そこに指示がないように思えます。新しいブック(xlsm形式)を開くと、マクロの実行が停止する
私は多くのブックを開き、印刷して閉じようとしています。
私はまた、読み取り専用モードで計算モードを手動で設定していますが、これまでに何も機能していません。
特定のブックを開くと、VBAマクロが実行を停止します。私がブレークモードでコードを実行すると、新しく開いたワークブックに制御が行き渡って、そこに指示がないように思えます。新しいブック(xlsm形式)を開くと、マクロの実行が停止する
私は多くのブックを開き、印刷して閉じようとしています。
私はまた、読み取り専用モードで計算モードを手動で設定していますが、これまでに何も機能していません。
すべてのブックを含むフォルダがある場合は、次のように動作します。 このコードは、指定したフォルダ内のExcelファイルの一連の反復ます
Dim objFSO As Object
Dim objFolder As Object
Dim objFile As Object
Dim strPath As String
Dim intLen As Integer
Dim strName As String
Dim wsSheet As Worksheet
Set objFSO = CreateObject("Scripting.FileSystemObject")
strPath = "C:\Users\username\Desktop\FolderName" 'Set path of folder with excel files
Set objFolder = objFSO.GetFolder(strPath) 'Get the folder object associated with the directory
For Each objFile In objFolder.Files 'Loop through the files in the folder
Workbooks.Open (strPath & "\" & objFile.Name)
Set wsSheet = Worksheets("Sheet1") 'Name of sheet in excel file
ActiveWorkbook.CheckCompatibility = False 'Skip compatibility check
このコードは指定されたパスに各シートに指定された範囲のPDFファイルをプリントアウトします:
intLen = Len(objFile.Name) - 5 'Remove .xlsx characters from name
strName = Left(objFile.Name, intLen)
wsSheet.Range("A1:P58").ExportAsFixedFormat xlTypePDF, "C:\Users\username\Desktop\" & strName & ".pdf", , , , , , False
このコード保存せずに各ファイルを閉じ、フォルダ内のループを続行します。
Workbooks(strName).Close SaveChanges:=False 'Close excel file without saving
Next
はい...私は以下を使用しますワークブックを開くコード サブOpenfile() Workbooks.Open(FilePath)、UpdateLinks:= False End Sub – user6879637
私は自分の答えを編集しました。それがうまくいくかどうか私に教えてください。 – Pslice
使用しているコードを含めることができますか? – Robby
私は常に、Workbooks.Open'ステートメントを実行すると、VBEのシングルステップモードからすぐに飛び出すことが分かりました。これは、F5キーを押した場合と同じです。しかし、それはマクロが停止することを意味しません。むしろ、マクロが最後まで実行されることを意味します。 (私は通常、 'Open'文の後にブレークポイントを入れて制御を取り戻します) – YowE3K
Sub Openfile() Workbooks.Open(FilePath)、UpdateLinks:= False End Sub – user6879637