本文へスキップ

別館:エクセルQC館 別館:エクセル株式館

  1. トップページ>
  2. Tips>
  3. Office365、Excel:VBAでActivePasteエラーの対処方法

Tipstips

備忘録として、主にパソコン関係のTipsを記載して行きます。


新着情報
@Office365、Excel:VBAでStatusBarが更新されない原因
AOffice365、Excel:ExcelからWordへ変換する方法
BOffice365、他バージョンとの共存下で関連付けを変更する方法
COffice365、Excel:VBAで画面が白くなる時の対処方法
DOffice365、Excel:VBAでActivePasteエラーの対処方法

Office365、Excel:VBAでActivePasteエラーの対処方法

Office365は、表計算ソフト、ワープロソフト、プレゼンテーションソフト、データベースソフト等が
入っているオフィスソフトです。これをインストールして置けば、家庭や仕事で多くの事が出来る様になります。

しかし、ExcelでVBAを動かしている時、ActivePasteエラーが発生する場合が有ります。
使用したパソコンは、下記のソフトを使用していました。

OS       : Windows10(64bit)バージョン21H1(OSビルド 19043.1237)
オフィスソフト  : Excel for Microsoft 365 MSO(16.0.14527.20234)
           64bit

以下、Office365、Excel:VBAでActivePasteエラーの対処方法を記載して行きます。

(項目1)
 ・ExcelでVBAを動かしている時、ActivePasteエラーが発生する場合が有ります。
 ・これが発生するとVBAが中断してしまい、処理が途中で終わってしまいます。

(項目2)
 ・色々と調べて見ると、Excel VBA PasteSpecial で出るエラーの回避方法 - Qiitaが見つかりました。
 ・上記によると、「Resumeで繰り返しトライすれば良い」との事でした。

(項目3)
 ・ポイントは、On Error GoTo〜Resume構文を利用して、成功するまで繰り返す事です。
  On Error GoTo myError
  myError:
  Resume

(項目4)
 ・VBAコードは、以下の通りです。

  Option Explicit

  Private Declare PtrSafe Sub Sleep Lib "kernel32" (ByVal ms As LongPtr)

  Sub main()

    Dim msg As String
    Dim count As Long

    count = 0
    On Error GoTo myError

    'ここで処理

    Exit Sub

  myError:
    count = count + 1
    Sleep 100
    DoEvents
    If count = 10 Then
      msg = "回数:" & count & vbCrLf
      msg = "エラー番号:" & Err.Number & vbCrLf
      msg = msg & "エラーの種類:" & Err.Description
      MsgBox msg, vbExclamation
      End
    End If

    Resume

  End Sub

(項目5)
 ・以上で、Office365、Excel:VBAでActivePasteエラーの対処方法は終了です。



contents

エクセル将棋館

日本国

地方都市


スポンサード リンク