tagCANDY CGI VBレスキュー(花ちゃん) の Visual Basic 2010 用 掲示板(VB.NET 掲示板) [ツリー表示へ]   [Home]
一括表示(VB.NET VB2005)
タイトル実行時エラー '1004' データを貼り付けできません。
記事No11958
投稿日: 2018/02/22(Thu) 16:42
投稿者ほほ
お世話になります。
省略箇所があるかと思いますが、以下の部分でエラー発生します。

お気づきの点がありましたらご指導お願いいたします。

    Dim adr2 As String

    'EXCELオブジェクト定義
    Dim Ws1 As Worksheet '
    Set Ws1 = Worksheets("sheet1")
  
    Sheets("sheet1").Activate
    adr2 = Range("A65536").End(xlUp).Row
  
    For i = 2 To adr2
  
    DLngBmpFileNo = FreeFile
    Open DStrBmpPath & DStrParaFIle For Output As DLngBmpFile
    Print #DLngBmpFile, Ws1.Cells(i, 1).Value & "," & DStrBmpPath & DStrBmpFile
    Close DLngBmpFile

    '/***************ここを変更したらエラーでるようになりました (?)   ********
    With ActiveSheet.Pictures.Insert(Filename:="C:\test\test.Bmp")
      .CopyPicture    'クリップボードにコピー
      .Delete         '画像をいったん削除
    End With
    ActiveSheet.Paste   '画像を貼り付け
   '***************ここを変更したらエラーでるようになりました  (?)  ********/

    Next i

[ツリー表示へ]
タイトルRe: 実行時エラー '1004' データを貼り付けできません。
記事No11959
投稿日: 2018/02/22(Thu) 18:18
投稿者魔界の仮面弁士
ここは VB.NET 向けの掲示板です。
Excel VBA の質問の場合は、隣の掲示板に移動をお願いします。


> Dim adr2 As String
> For i = 2 To adr2
数値カウントなのに、何故 String に?


> お気づきの点がありましたらご指導お願いいたします。
現状のコードだと、ThisWorkbook と ActiveWorkbook が異なる場合に
問題が生じる可能性があります。Activate メソッド等に頼らずに、
常に Ws1 変数のインスタンスを通じてアクセスするように書き換えてみましょう。

[ツリー表示へ]
タイトルRe^2: 実行時エラー '1004' データを貼り付けできません。
記事No11960
投稿日: 2018/02/23(Fri) 08:03
投稿者ほほ
> ここは VB.NET 向けの掲示板です。
> Excel VBA の質問の場合は、隣の掲示板に移動をお願いします。
すみません。今回はこちらで質問させてください。

次のように変更しましたら次のエラーでるようになりました。
記載方法に誤りなどないでしょうか?

実行時エラー '1004' 'Paste'メソッドは失敗しました 'Worksheet'オブジェクト

参考までにですが、貼り付ける画像数は約1000でして
300枚貼り付けしたあたりでいつもエラーでます。

Dim adr2 As Integer

For i = 2 To adr2
  

  Ws1.Cells(i, 2).Select '前回記載していませんでした。

  '/***************ここを変更したらエラーでるようになりました (?)   ********
  With Ws1.Pictures.Insert(Filename:="C:\test.\test.Bmp")
   .CopyPicture    'クリップボードにコピー
   .Delete         '画像をいったん削除
  End With

  Ws1.Paste   '画像を貼り付け
  '***************ここを変更したらエラーでるようになりました  (?)  ********/

Next i

[ツリー表示へ]