Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


34854 / 76734 ←次へ | 前へ→

【47083】Re:For Each〜In〜Nextのマクロエラーについて
質問  ボボ  - 07/2/28(水) 14:41 -

引用なし
パスワード
   ▼Blue さん:
先ほどはありがとうございました。
やっぱりつまづいてしまいました。
開いたファイル名が「マクロ.xls」の[データ]シートのセル「B12:H12」と同じであれば処理を進め、違う場合は開いたファイルを閉じ、また新たにファイルを開き、処理を進めるというマクロにしたいのですが、For Each〜とかIf
〜をどのように使ったらいいのか???です。

もしお分かりのようでしたら、教えてください!お願いします!

---------------------------------

Sub マクロ()
  Dim destSheet As Worksheet
  Dim srcBook  As Workbook
  Dim srcSheet As Worksheet
  Dim r As Range
  Dim s As Variant
  Dim fileName As Variant
 
  ' コピー元のファイル名の取得
  fileName = Application.GetOpenFilename("すべてのファイル,*.*")
  If fileName <> False Then
     Set srcBook = Workbooks.Open(fileName)
  Else
    Exit Sub
  End If
 
  ' コピー先のシートを設定
  Set destSheet = Workbooks("マクロ.xls").Sheets("データ")

  ’ここからが???  
  For Each s In destSheet.Range("B12:H12")
    If srcBook.Name = s Then
               ’↑ここの記述がよく分かりません???

     ' コピー
     For Each r In destSheet.Range("B3:H3")
       On Error Resume Next
       Set srcSheet = srcBook.Worksheets(r.Text)
       If Err.Number <> 0 Then
         MsgBox "'" & r.Text & "'というシートが存在しません。"
         Exit For
       End If
       On Error GoTo 0
     
       srcSheet.Range("AD20:AD22").Copy
       r.Offset(1).PasteSpecial xlPasteValues
     
       srcSheet.Range("F37").Copy
       r.Offset(4).PasteSpecial xlPasteValues
    
       srcSheet.Range("AF6").Copy
       r.Offset(5).PasteSpecial xlPasteValues
     Next
       Else
       srcBook.Close
         
     ' コピー元のファイル名の取得
     fileName = Application.GetOpenFilename("すべてのファイル,*.*")
     If fileName <> False Then
        Set srcBook = Workbooks.Open(fileName)
     Else
       Exit Sub
     End If
    
    End If

  Next
  
  Set destSheet = Nothing
  Set srcBook = Nothing
  Set srcSheet = Nothing
 
  Application.CutCopyMode = False
End Sub

---------------------------------

0 hits

【47074】For Each〜In〜Nextのマクロエラーについて ボボ 07/2/28(水) 13:03 質問
【47075】Re:For Each〜In〜Nextのマクロエラーにつ... りん@通りすがり 07/2/28(水) 13:06 回答
【47076】Re:For Each〜In〜Nextのマクロエラーにつ... ボボ 07/2/28(水) 13:12 質問
【47077】Re:For Each〜In〜Nextのマクロエラーにつ... Blue 07/2/28(水) 13:18 発言
【47079】Re:For Each〜In〜Nextのマクロエラーにつ... Blue 07/2/28(水) 13:34 発言
【47080】Re:For Each〜In〜Nextのマクロエラーにつ... ボボ 07/2/28(水) 13:47 お礼
【47083】Re:For Each〜In〜Nextのマクロエラーにつ... ボボ 07/2/28(水) 14:41 質問
【47085】Re:For Each〜In〜Nextのマクロエラーにつ... Blue 07/2/28(水) 14:55 質問
【47086】Re:For Each〜In〜Nextのマクロエラーにつ... ボボ 07/2/28(水) 15:21 質問
【47087】Re:For Each〜In〜Nextのマクロエラーにつ... Blue 07/2/28(水) 15:29 質問
【47088】Re:For Each〜In〜Nextのマクロエラーにつ... ボボ 07/2/28(水) 15:44 質問
【47089】Re:For Each〜In〜Nextのマクロエラーにつ... Blue 07/2/28(水) 16:08 発言
【47090】Re:For Each〜In〜Nextのマクロエラーにつ... ボボ 07/2/28(水) 16:18 質問
【47091】Re:For Each〜In〜Nextのマクロエラーにつ... Blue 07/2/28(水) 16:38 発言
【47092】Re:For Each〜In〜Nextのマクロエラーにつ... ボボ 07/2/28(水) 16:41 お礼

34854 / 76734 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free