Excel VBA質問箱 IV

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

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


70912 / 76738 ←次へ | 前へ→

【10328】Re:フォルダ内のExcelを一つのファイルの...
質問  is  - 04/1/19(月) 9:37 -

引用なし
パスワード
   ▼INA さん:
>>A1.xls,A2.xls,A3.xls,A4.xls,B1.xls,というファイルがあり中身は表だったり
>>データだったりさまざまです。
>これらのブックのシート名はどうなっていますか?

INAさんお返事が遅くなり申し訳ありません。
ブックのシート名は規定のsheet1だったり1月だったりです。

下記は休み中に本を参考につくったものなんですが
(フォルダ名はファイル結合.xls上でダイアログから参照、結合先のファイルはa1.xls,a2.xls,a3.xls)
ダイアログからフォルダを参照させるとうまくいきません。
別でもいいので何か用意方法ございますでしょうか?


Private Sub CommandButton1_Click()
  With Application.FileDialog(msoFileDialogFolderPicker)
    .InitialView = msoFileDialogViewDetails
    .AllowMultiSelect = False
    .Show
    .Execute   ←デバックエラーがかかりダイアログからフォルダをひっぱることができません。
  End With

End Sub

Private Sub CommandButton2_Click()
  Dim i As Integer
  Dim fpath As String
  Dim fname As String
  
  fpath = TextBox1
  fname = TextBox2
  newfil = TextBox3
  
  MsgBox fpath & Chr(13) & _
   "以下の、名前に「a」を含むExcelブックを名前順に表示します"
  ActiveWorkbook.Worksheets.Add    '---新規シートを追加
  
  新規で作成するファイルを登録
  Workbooks.Add
  ActiveWorkbook.SaveAs Filename:=fpath & newfil, FileFormat:=xlNormal, _
  Password:="", WriteResPassword:="", ReadOnlyRecommended:=False, _
  CreateBackup:=False

   
  With Application.FileSearch     '---FileSearchオブジェクトに対して
    .LookIn = fpath         '---検索するフォルダを指定
    .SearchSubFolders = True     '---サブフォルダも検索対象にする
    .Filename = "*" & fname & "*.xls"       '---検索するファイル名の指定
    .FileType = msoFileTypeExcelWorkbooks '---検索対象はエクセルブック
    If .Execute(SortBy:=msoSortByFileName, _
      SortOrder:=msoSortOrderAscending) > 0 Then '---1.
      MsgBox .FoundFiles.Count & " 個のExcelブックが見つかりました"
      For i = 1 To .FoundFiles.Count
            
        sanshou = .FoundFiles(i)
        Workbooks.Open Filename:=sanshou, ReadOnly:=True
        sanfname = ActiveWorkbook.Name
        
        Set mysheet = ActiveWorkbook.Worksheets("sheet1")
        mysheet.Copy before:=Workbooks(newfil).Worksheets(i)
        
        Workbooks(newfil).Worksheets(i).Name = sanfname
        
        Workbooks(sanfname).Close savechanges:=False
        
              Next i
      
    Else
      MsgBox "該当するExcelブックはありません"
    End If
  End With
End Sub

Private Sub UserForm_Click()

End Sub

0 hits

【10298】フォルダ内のExcelを一つのファイルの各シートに反映したい is 04/1/16(金) 14:46 質問
【10299】Re:フォルダ内のExcelを一つのファイルの各... INA 04/1/16(金) 15:01 回答
【10302】Re:フォルダ内のExcelを一つのファイルの... is 04/1/16(金) 16:47 質問
【10304】Re:フォルダ内のExcelを一つのファイルの... INA 04/1/16(金) 17:57 回答
【10328】Re:フォルダ内のExcelを一つのファイルの... is 04/1/19(月) 9:37 質問
【10332】Re:フォルダ内のExcelを一つのファイルの... INA 04/1/19(月) 11:51 回答
【10336】Re:フォルダ内のExcelを一つのファイルの... is 04/1/19(月) 13:53 質問
【10337】Re:フォルダ内のExcelを一つのファイルの... INA 04/1/19(月) 14:02 回答
【10338】Re:フォルダ内のExcelを一つのファイルの... is 04/1/19(月) 15:14 お礼
【10342】Re:フォルダ内のExcelを一つのファイルの... INA 04/1/19(月) 17:38 回答
【10408】Re:フォルダ内のExcelを一つのファイルの... is 04/1/25(日) 15:01 お礼

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