エクセルの.slkファイルを.xlsに変換して結合する方法
- エクセルの.slkファイルを.xlsに変換して結合する方法をご教授します。
- VBAを使用して、複数の.slkファイルを1つの.xlsファイルに結合する方法を解説します。
- フォルダA内のマクロデータ.xlsに、フォルダA内の全ての.slkファイルを結合して出力する方法をご紹介します。
- ベストアンサー
エクセルの【.slk】ファイルを【.xls】に変換
1つのフォルダにたくさん入っている.slkファイルを1つの.xlsファイルに結合したいです。 VBAにて作業したいのですがどなたかご教授願います。 【フォルダA】の中にマクロが入っているxlsファイルを置いて、 同じ場所にある全てのslkファイルを1つのシートにまとめてxlsファイルに出力したいです。 出力したファイルは同じフォルダの中に出力されるようにしたいです。 下記URLを参考にしてやってみようとしたのですが、上手く出力されることができませんでした。 【http://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1155537766】 申し訳ありませんがどなたかご教授お願いします。 ○イメージ 【フォルダA】 ┣マクロデータ.xls ┣.slkファイル1 ┣.slkファイル2 ┣.slkファイル3 ┣.slkファイル4 ┣.slkファイル5 ┣.slkファイル6 ・ ・ ・ ┗slk結合データ.xls(マクロで.slkファイルを結合して出力)
- Lily0
- お礼率90% (9/10)
- Visual Basic
- 回答数2
- ありがとう数1
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
恥ずかしいくらいの手抜き版で失礼 Sub Sample() sPath = ThisWorkbook.Path sMkFile = "slk結合データ.xls" '新しい貼付用ブックを作成 Workbooks.Add xlWBATWorksheet sNewbook = ActiveWorkbook.Name 'ループを回して全てのslkファイルを処理 sSlkFile = Dir(sPath & "\*.slk") nRowTarget = 1 '貼付行 Do While sSlkFile <> "" '見つかったslkファイルを開く Workbooks.Open Filename:=sPath & "\" & sSlkFile 'slkファイルのシートをコピー Set rUse = Sheets(1).UsedRange nRow = rUse(rUse.Count).Row Rows("1:" & nRow).Copy '新しいブックに貼り付ける Workbooks(sNewbook).Sheets(1).Cells(nRowTarget, 1).PasteSpecial nRowTarget = nRowTarget + nRow 'slkファイルを閉じる Application.CutCopyMode = False Windows(sSlkFile).Close sSlkFile = Dir() Loop '貼付用ブックを保存 Workbooks(sNewbook).SaveAs Filename:=sPath & "\" & sMkFile, FileFormat:=xlWorkbookNormal Workbooks(sMkFile).Close End Sub
その他の回答 (1)
- mt2008
- ベストアンサー率52% (885/1701)
補足願います。 やりたいのはどちらでしょう? ・.slkファイルを、1つのブックにまとめる(1つの.slkファイルが1シート) ・.slkファイルを、1つのシートにまとめる(1枚のシートに上から下へ全.slkファイルを貼りつける) 通常、前者かと思うのですが、質問を読むと後者と書いてあったので確認です。
補足
後者の「.slkファイルを1つのシートにまとめる(1枚のシートに上から下へ全.slkファイルを貼りつける)」になります。 お手数をおかけしてもうしわけありませんがよろしくおねがいします。
関連するQ&A
- slk拡張子のエクセルファイルを保存せずに.xlsに変換するには
slk拡張子のエクセルファイルを保存せずに.xlsに変換するには slk拡張子のエクセルファイルが開かれています。 私の勉強不足のせいかslkでマクロでピボットテーブルを実行するとエラーになってしまい それをエクセルファイル.xlsで一旦保存後、実行するとエラーにならずうまくいきます。 その為、slk拡張子のエクセルファイルを.xlsに変換したいと思います。 しかしやりたいのはデータ容量が大きいので保存せずにそのまま.slkファイルを.xlsファイルに変換したいのですがそんなマクロって出来ますでしょうか?
- ベストアンサー
- その他MS Office製品
- エクセル フォルダ内の.xlsファイルの集計
エクセルで、複数の.xlsファイルの特定セルを集計するマクロを組みたいのですが、VBA勉強しはじめでうまくいかず、皆様の知識をお借りできればありがたいと思い質問させていただきます。 作業としては あるフォルダに複数の.xlsファイル(それぞれのファイルは同一形式で、sheet1およびsheet2は作業用シート。sheet3以降がデータの入ったシートとする)を置いておき、それぞれのデータ入りシート(シート数はファイルにより異なる)の特定セルを集計したものを、新たなブックに書き込む という形です。 その際に、各シートの特定セルの内容により出力するセルを変えたいと思っています。 実際には、 AAA.xlsというファイルの3枚目以降のシートで、L2セルに「B」と記述があれば別ブックのB3セルに、「C」と記載されていれば別ブックのC3セルに、それぞれD4セルの数値を集計する。 次にBBB.xlsというファイルに関しても同様に集計し、その結果はB4セルとC4セルに出力する これを当該フォルダに入っているファイル全てについて行う ※L2セルには「B」「C」以外の文字は入りません。 こういった作業ができればと思っています。 お時間のある方がおられましたら、ご教授いただけますでしょうか。 参考になるサイトなどがありましたら、アドレスだけでも御教えいただけると幸いです。 質問の仕方が悪いようでしたら、ご指摘いただければ再度説明させていただきます。拙劣な説明ですがどうかよろしくお願いします。
- ベストアンサー
- オフィス系ソフト
- エクセル VBA ファイルをフォルダへ移動させる
エクセル VBA 手探り状態です。 001大企業.xls、001中小企業.xls、003大企業.xls、003中小企業.xls、008大企業.xls、008中小企業.xls・・・・というファイルが300ほど企業種類という名前のフォルダにあります。 VBAで企業種類という名前のフォルダの中に、001、003、008・・・というフォルダは作成しました。 (ネットで”フォルダ作成”を検索して、、、自力ではVBAは書けません) それを001という名前のフォルダへは、001大企業.xls、001中小企業.xlsのファイル、003という名前のフォルダへは003大企業.xls、003中小企業.xlsのファイルを、008フォルダへは008大企業.xls、008中小業.xlsファイルを・・・というように、マクロで移動させたいのです。 これらのファイル、フォルダは全て、企業種類というフォルダの中にあります。 VBAを教えていただけましたら嬉しいです。
- 締切済み
- その他MS Office製品
- xlsファイルをxlsmファイルに変換する方法
ご教授お願いします。 ローカルに作成された「xlsファイル」(マクロ付)を「xlsmファイル」に変換したのですが、 サンプルロジックをいただけないでしょうか。 「xlsmファイル」の作成先は、「xlsファイル」が保管されているフォルダと同じです。 変換の際、Excel画面は表示させたくないです。 起動はバッチです。 ■環境 Windows7 office2010 vb2008 ぜひともよろしくお願いいたします 以上
- 締切済み
- Visual Basic
- エクセル2003での質問です。
エクセル2003での質問です。 Aのフォルダ内にa.xlsファイルがあるとします Bのフォルダ内にb.xlsファイルがあるとします a.xlsの中のデータはA1に1という数字のデータがあるとします ここで質問です。 b.xlsのファイルを開きA1にa.xlsの中のデータのA1の値を リンクさせたい場合はどのように処理するのでしょうか? (a.xlsのA1が3になればb.xlsのA1も3になるようにしたいのです) マクロを使わずにお願いします。
- ベストアンサー
- オフィス系ソフト
- Excelでのリンク付けについて
Excelで「書類」というフォルダにA.xlsとデータフォルダがあります。データフォルダの中にB.xlsというファイルがあります。 そこで、マクロでB.xlsファイルのセルA1にA.xlsファイルのセルB2のデータをリンクするとき絶対パスではやりたくないのですが、どうすればいいかわからないので教えてください。 よろしくおねがいします。
- ベストアンサー
- オフィス系ソフト
- エクセル マクロで特定ファイル名だけを開く
エクセルのマクロで 特定のファイル名だけをフォルダの中から探して 開くというものを作りたいのですが うまくできません。 フォルダを指定して 「060927.xls」というエクセルファイルだけを 開きたいのですが この日付のところが毎日変わるので 「06XXXX.xls」というような 最初が06であと4つの文字が入ってるファイル名だけを 流動的に指定できるようにするには どのようなVBAマクロにすればよいのでしょうか? とても困っています。 是非教えてください!宜しくお願いします。
- ベストアンサー
- オフィス系ソフト
- 1フォルダに「A.xls」、「B.xls」、「C.xls」・・・とある
1フォルダに「A.xls」、「B.xls」、「C.xls」・・・とある場合、 すべてのファイルに一斉にA1セルに「a」という文字を反映させる場合の VBAプログラムを教えていただけますでしょうか? よろしくお願いいたします。
- ベストアンサー
- Visual Basic
- テキストファイルからの抽出
VBAでもコマンドプロンプトでもいいのですが、1000行くらいあるテキストファイルを読み込んで、キーワード「タイムアウト」を含む行の1つ手前の行の文字列を抽出、それらを1つのファイルにまとめて出力させたいのです。 VBAで自分なりにやってみたのが http://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q12142881517 の最後の回答にあるマクロに手を少し加えて「タイムアウト」のある行番号をテキストファイルに出力し、その出力ファイルを読み込んで、一つ手前の行番号のリストを作ることまではできました。 ですが、どうやってそのリストから行番号を指定して、元のファイルからタイムアウトを含む行の1つ手前の行を抽出し、1つのファイルにまとめて出力させられるのかが分かりません。 後Powershellはまだ勉強途中なのですが、こっちでならできますか? アドバイスをお願いします。
- ベストアンサー
- Visual Basic
- フォルダ内の特定ファイル名表示
excel のVBAでmydoocumentの"abc"というフォルダの中にあるxls拡張子 付きのファイルを今開いているシートのA列にxxx.xlsと表示するマクロを書きたいのですが。教えてください。
- ベストアンサー
- オフィス系ソフト
お礼
遅くなってもうしわけありません。 無事にslkファイルを結合させることができました! とても参考になりました。 ありがとうございました!