エラー91に関連する他の関連するソリューションを適切にチェックしていますが、問題の解決方法が見つからないようです。VBAエラー91 - オブジェクトまたはブロック付き変数が設定されていません
次のVBAコードを使用してアプリケーションをクラッシュさせるか、Error 91 'ObjectまたはWith Block Variable not set'を表示して、さまざまなフォルダ(約500ファイル)にネストされたcoreldrawファイルを変換しようとしています。テストするために作成したファイルの他のデモセットと一緒に使用すると、同じコードが正常に動作します。
私は、スクリプトを処理するときにダイアログが表示されることがあります。はいの場合、どうすればこれらのダイアログボックスを回避できますか? Application.DisplayAlerts = Falseがcoreldrawで機能していません。
ただし、この場合は前提に過ぎません。誰かが問題を見つけるのを助けることができますか?私はCorelDrawのVBAを知らないが、私はあなたに次のコードを得ることができると仮定したい有効なコーレルドローファイルは
を発見されたかどうかをチェックしなければならないと言うだろうHERESにコード
Sub NewFolder()
Dim FileSystem As Object
Dim HostFolder As String
HostFolder = "My folder Path"
Set FileSystem = CreateObject("Scripting.FileSystemObject")
DoFolder FileSystem.GetFolder(HostFolder)
End Sub
Sub DoFolder(folder)
Dim SubFolder
For Each SubFolder In folder.SubFolders
DoFolder SubFolder
Next
Dim File
For Each File In folder.Files
If InStr(File.Name, ".cdr") Then
Application.OpenDocument (File)
End If
Dim filepath As String
filepath = ActiveDocument.FullFileName
Dim doc1 As Document
Dim SaveOptions As StructSaveAsOptions
Set SaveOptions = CreateStructSaveAsOptions
Set doc1 = ActiveDocument
With SaveOptions
.EmbedVBAProject = True
.Filter = cdrCDR
.IncludeCMXData = False
.Range = cdrAllPages
.EmbedICCProfile = True
.Version = cdrVersion17
End With
doc1.SaveAs filepath, SaveOptions
doc1.Close
' Operate on each file
Next
End Sub
を実行持っていないループt行はエラーをスローしています。 – Jeeped