質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
VBA

VBAはオブジェクト指向プログラミング言語のひとつで、マクロを作成によりExcelなどのOffice業務を自動化することができます。

Q&A

解決済

2回答

3406閲覧

ネットワークエラーを無視する方法

hajihaji

総合スコア18

VBA

VBAはオブジェクト指向プログラミング言語のひとつで、マクロを作成によりExcelなどのOffice業務を自動化することができます。

0グッド

0クリップ

投稿2018/10/01 02:57

編集2018/10/01 04:52

ネットワークエラーを無視する方法があればご教示いただきたいと思います。
よろしくお願いします。
以下のコードでは対応していないようなのであればお願いします。

Sub Auto_Open() Dim x, a, b, c, d As Long Dim sh1 As Worksheet Dim pdfpath As String On Error Resume Next Set sh1 = Worksheets("Sheet1") For b = 1 To Range("J60000").End(xlUp).Row x = Mid(sh1.Cells(b, 10), 1, 8) c = Mid(sh1.Cells(b, 10), 3, 6) a = Mid(sh1.Cells(b, 10), 3, 4) If Range("A18") = Cells(b, 1) Then With CreateObject("Shell.Application") .ShellExecute "\機械図面\製造図面" & "\" & "NS" & a & "00" & "~" & "NS" & a & "99" & "\" & x & ".pdf" End With End If Next b On Error GoTo 0 End Sub

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

ttyp03

2018/10/01 04:01

例えばどのようなコードでネットワークエラーを起こせばよいのでしょうか?
hajihaji

2018/10/01 04:53

対象となるコードを追記しました。
guest

回答2

0

本質的にはエラーというのは無視してはいけないものです。
特にネットワークなんてのは、ネットワークが繋がっていなければそもそも以後の動作に支障を来すことが大半ですから、エラーを無視して続行しても、以後の処理で余計に困ったことになります。

ネットワークエラーを検知して適切な処理をする、ならいいのですが。

さてネットワークエラーの検知方法ですが、これはネットワークをどうやって使っているか(どのAPIを使っているか)によって異なってきますので、質問に書かれた内容からではどうにも答えようがありません。
「○○を使ってネットワークに接続しようとしているが、エラーのときにプログラムを止めずに処理したい」といったように、質問を修正された方がよいでしょう。

投稿2018/10/01 04:18

tacsheaven

総合スコア13703

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

hajihaji

2018/10/01 04:54

ご指摘ありがとうございます。 対象となりますコードを記入しました。
guest

0

ベストアンサー

他の回答に類似しますが、エラーを無視するのではなく、エラーが起きないようなコードを書くべきです。
例えば、0除算しないように、あらかじめ0かどうかをチェックするようなことです。
今回のコードでは次のようにあらかじめファイルが存在するか否かで回避できるかと思います。

VBA

1pdf = "\機械図面\製造図面" & "\" & "NS" & a & "00" & "~" & "NS" & a & "99" & "\" & x & ".pdf" 2ret = Dir(pdf) 3If Not IsEmpty(ret) And ret <> "" Then 4 With CreateObject("Shell.Application") 5 .ShellExecute pdf 6 End With 7End If

投稿2018/10/01 05:12

ttyp03

総合スコア16998

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

hajihaji

2018/10/01 06:50

できました。ありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問