Excel VBA質問箱 IV

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

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


13809 / 76738 ←次へ | 前へ→

【68431】Re:できました!! ですが・・・
回答  UO3  - 11/3/5(土) 16:58 -

引用なし
パスワード
   ▼ケメ子 さん:

こんにちは

もう少しまともなコードで記述します。
11/2/22(火) 0:44 にアップされたコードを踏まえています。
従来はaName=bNameでしたが、今回は異なる可能性もあるので、別途bNameを規定しましょう。
したがってbBookのOpenはbNmaeにて行うことにご留意ください。
(テストしてませんので不具合あればいってください)

追加

  Dim bName As String
  Dim myPre As String

コードの最初のほうで  

  myPre = ThisWorkbook.Sheets(1).Range("K5").Value

以下のように修正

  For Each myFile In myFso.GetFolder(aPath).Files
    aName = myFile.Name
    If LCase(myFso.GetExtensionName(aName)) = "xls" Then
'aPathのaBook(aName) 12345ABC から cPathのcBook(cName) 【作業】12345 エービーシー を紐つける
      cName = IsExists(cPath, aName, myPre)
      If cName <> "" Then
        Set cBook = Workbooks.Open(cPath & "\" & cName, UpdateLinks:=3) 'リンクの更新して開く
   
'------------------------------
'元ファイルから各シートへコピー
'------------------------------
   
         Set aBook = Workbooks.Open(aPath & "\" & aName, Password:=ThisWorkbook.Sheets(1).Range("D7").Value) 'セルD7のパスワードで開く
  
        '処理 省略
    
         aBook.Close False
  
  
'----------------------------------------
'前月ファイルから各シートへランクデコード
'----------------------------------------

  
       Set bBook = Nothing
'aNameから bPathのbBook(bName) 12345 ABC を紐つける
       bName = IsExists(bPath, aName, "")
       If bName <> "" Then _
         Set bBook = Workbooks.Open(bPath & "\" & bName, Password:=ThisWorkbook.Sheets(1).Range("D7").Value)
    
       '処理 省略
  
'-------------------------------
'ブック処理完了 --> 次のブックへ
'-------------------------------

  
        If Not bBook Is Nothing Then
         bBook.Close False
         cBook.Close True
        End If
        
      End If
      
    End If
    
  Next

さらに下記プロシジャを追加。

Private Function IsExists(myPath As String, myName As String, myPre As String) As String
  Dim fName As String
  Dim f1 As Long
  Dim wk As String
  f1 = Val(myName)
  
  fName = Dir(myPath & "\" & myPre & f1 & "*.xls")
  Do While fName <> ""
    wk = Replace(fName, myPre, "", , 1) '頭の【作業】を除く
    If f1 = Val(wk) Then
      IsExists = fName
      Exit Do
    End If
    fName = Dir()
  Loop

End Function

0 hits

【68149】VLOOKUPを使ったデータの参照 ケメ子 11/2/7(月) 0:02 質問
【68152】Re:VLOOKUPを使ったデータの参照 UO3 11/2/7(月) 11:14 発言
【68162】Re:VLOOKUPを使ったデータの参照 ケメ子 11/2/7(月) 22:43 発言
【68164】Re:VLOOKUPを使ったデータの参照 UO3 11/2/8(火) 12:45 発言
【68173】Re:VLOOKUPを使ったデータの参照 ケメ子 11/2/8(火) 22:04 発言
【68174】Re:VLOOKUPを使ったデータの参照 UO3 11/2/9(水) 11:43 発言
【68175】Re:VLOOKUPを使ったデータの参照 UO3 11/2/9(水) 12:12 発言
【68176】Re:VLOOKUPを使ったデータの参照 UO3 11/2/9(水) 12:25 発言
【68177】Re:VLOOKUPを使ったデータの参照 UO3 11/2/9(水) 13:09 発言
【68180】Re:VLOOKUPを使ったデータの参照 ケメ子 11/2/9(水) 22:11 発言
【68182】Re:VLOOKUPを使ったデータの参照 UO3 11/2/10(木) 12:26 回答
【68183】Re:VLOOKUPを使ったデータの参照 ケメ子 11/2/10(木) 23:35 発言
【68232】Re:VLOOKUPを使ったデータの参照 ケメ子 11/2/16(水) 23:15 質問
【68237】Re:VLOOKUPを使ったデータの参照 UO3 11/2/17(木) 10:29 回答
【68240】Re:VLOOKUPを使ったデータの参照 UO3 11/2/17(木) 10:43 発言
【68243】Re:VLOOKUPを使ったデータの参照 UO3 11/2/17(木) 11:02 回答
【68254】Re:VLOOKUPを使ったデータの参照 ケメ子 11/2/17(木) 22:39 発言
【68255】Re:VLOOKUPを使ったデータの参照 UO3 11/2/17(木) 23:08 発言
【68259】Re:VLOOKUPを使ったデータの参照 ケメ子 11/2/18(金) 21:14 発言
【68303】Re:VLOOKUPを使ったデータの参照 ケメ子 11/2/22(火) 0:44 質問
【68306】Re:VLOOKUPを使ったデータの参照 UO3 11/2/22(火) 9:28 発言
【68307】Re:VLOOKUPを使ったデータの参照 UO3 11/2/22(火) 9:50 発言
【68308】Re:VLOOKUPを使ったデータの参照 UO3 11/2/22(火) 10:27 発言
【68314】Re:VLOOKUPを使ったデータの参照 ケメ子 11/2/23(水) 0:19 発言
【68315】Re:VLOOKUPを使ったデータの参照 UO3 11/2/23(水) 13:32 発言
【68316】Re:VLOOKUPを使ったデータの参照 UO3 11/2/23(水) 13:36 発言
【68317】Re:VLOOKUPを使ったデータの参照 UO3 11/2/23(水) 13:38 回答
【68321】Re:VLOOKUPを使ったデータの参照 UO3 11/2/23(水) 22:04 発言
【68322】Re:VLOOKUPを使ったデータの参照 ケメ子 11/2/23(水) 22:04 質問
【68331】Re:VLOOKUPを使ったデータの参照 UO3 11/2/24(木) 11:46 発言
【68333】Re:VLOOKUPを使ったデータの参照 UO3 11/2/24(木) 11:47 発言
【68346】Re:VLOOKUPを使ったデータの参照 ケメ子 11/2/24(木) 22:46 発言
【68421】Re:VLOOKUPを使ったデータの参照2 ケメ子 11/3/3(木) 20:15 質問
【68425】Re:VLOOKUPを使ったデータの参照2 UO3 11/3/4(金) 12:32 回答
【68426】できました!! ですが・・・ ケメ子 11/3/4(金) 20:31 質問
【68429】Re:できました!! ですが・・・ UO3 11/3/4(金) 21:51 発言
【68431】Re:できました!! ですが・・・ UO3 11/3/5(土) 16:58 回答
【68432】Re:できました!! ですが・・・ ケメ子 11/3/5(土) 18:53 発言
【68441】プロシージャの追加場所 ケメ子 11/3/7(月) 21:21 質問
【68442】Re:プロシージャの追加場所 UO3 11/3/7(月) 21:59 回答
【68479】\(^o^)/ ケメ子 11/3/9(水) 20:58 お礼

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