[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『エクセルファイルに他のエクセルファイルのシートから目的の行を読み込みたい』(事務作業が進まない子)
社員からエクセルデータでアンケートをとりました。 そのファイルの中から項目ごとに回答を取り出して1ファイルにしたいのです。 今は手作業で1つづつファイルを開いて、3行目のデータを手作業でコピー&ペーストで取り込んでいます。 こんなことをしていたら今日中に帰れないよう、誰か助けてぇ〜、ください。 Excel2003を使用しています。
o(*'〜'*)o がんばっ♪
ってだけじゃあ、あんまりなので、、、全てのアンケートは同じフォルダーに集めらてれいますか。 あと、ひとつのブックにシートはいくつで、どのシートとか決まりはありますか。
(川野鮎太郎)
とりあえず同じフォルダの開いたシートの3行めを転記します。 Option Explicit Sub アンケート転記() Dim myObj As Object Dim XlApp As Application Dim myDir As String Dim StartPath As String Dim StartFileName As String Dim Op_Book As Object Dim myBook As Object Dim MyRow As Long Const CstTitle = "フォルダ内のファイル名一覧取得" Const CstFld = "\*.xls" Set myBook = ThisWorkbook Set XlApp = Application Set myObj = CreateObject("Shell.Application"). _ BrowseForFolder(0, "フォルダを選択してください", 0) XlApp.DisplayAlerts = False If myObj Is Nothing Then Exit Sub If myObj = "デスクトップ" Then StartPath = CreateObject("WScript.Shell").SpecialFolders("Desktop") Else StartPath = myObj.Items.Item.Path End If If Right(myDir, 1) <> "\" Then myDir = myDir & "\" StartFileName = Dir(StartPath & CstFld, vbNormal) MyRow = 5 ' 先頭を5行目に設定 Do While StartFileName <> "" Set Op_Book = Workbooks.Open(StartPath & "\" & StartFileName) ' 行を加算 MyRow = MyRow + 1 Rows(3).Copy Destination:=myBook.Worksheets("Sheet1").Rows(MyRow) Op_Book.Close StartFileName = Dir() Loop XlApp.DisplayAlerts = True Set myBook = Nothing Set XlApp = Nothing Set myObj = Nothing End Sub
(川野鮎太郎)
(事務作業が進まない子)
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.