• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:EXCEL VBA 社員毎にファイルを分割したい)

EXCEL VBA 社員毎にファイルを分割する方法

このQ&Aのポイント
  • EXCEL VBAを使用して、社員毎にファイルを分割する方法について説明します。
  • 売上実績を記述したExcelファイルを担当者別に分割し、デスクトップに保存することができます。
  • ファイル名は支店名と担当者名を組み合わせて保存されます。

質問者が選んだベストアンサー

  • ベストアンサー
  • keithin
  • ベストアンサー率66% (5278/7940)
回答No.1

sub macro1()  dim w as worksheet  dim n as long  dim r as long  dim s as string  dim WSH as variant  dim myPath as string  set w = activesheet  n = worksheets.count  on error goto errhandle  for r = 2 to w.range("A65536").end(xlup).row   s = w.cells(r, "A") & "_" & w.cells(r, "B")   w.rows(r).copy worksheets(s).range("A65536").end(xlup).offset(1)  next r  on error goto 0  set wsh = createobject("Wscript.Shell")  mypath = wsh.specialfolders("Desktop") & "\"  for r = worksheets.count to n + 1 step -1   worksheets(worksheets.count).copy   activesheet.columns.autofit   activeworkbook.saveas filename:=mypath & activesheet.name   activeworkbook.close false   application.displayalerts = false   worksheets(worksheets.count).delete   application.displayalerts = true  next r  w.select  exit sub errhandle:  worksheets.add after:=worksheets(worksheets.count)  activesheet.name = s  w.rows(1).copy range("A1")  resume end sub

yakkun2338
質問者

お礼

keithinさん、ご連絡ありがとうございました! ご連絡が遅くなりまして申し訳ございませんでした。 やりたいことが完璧に出来ました!! 本当にいつもいつもありがとうございます!! 今回も助かりました!

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • excel vbaでVlookup的な集計したい

    お世話になります。 デスクトップに[集計]というフォルダ作って、その中に[集計.xls]というファイルがあります(画像参照) さらに[個別]というファイルダ内に[実績A.xls]というファイルがあります。 実際には実績B.xls、実績C.xlsと複数ファイルが存在します。 集計.xlsにボタンを作ってクリックすると下記のような動きを実現したいのです。 [個別]フォルダ内の実績A.xlsファイルを開いて[集計.xls]のA列(支店名)、B列(商品番号)と合致したデータを次のように挿入していきたいのです。 集計.xls  実績A.xls C列  ← D列の値 D列  ← E列の値 E列  ← F列の値 F列  ← G列の値 この作業を実績A.xlsファイルの全シートに対して実施したいのです。(マスターというシートは抜かして左から右へ)。全シートREADし終わったら閉じて次の実績B.xlsファイルを開いて、また同じ作業を繰り返し、[集計.xls]もA2のデータから再びREAD、という動きです。 わかりにくい説明で大変恐縮ですが、業務で求められ困っております・・ どなたかご教授いただけますでしょうか。 何卒よろしくお願い致します。 Excel2013 Windows7

  • 複数のエクセルブックから転記するマクロを教えて

    エクセル2010で、1つのフォルダ内にある複数のエクセルブック(約50支店分)の売上シートから、担当者別の日次売上等の集計マクロを作成したいのですが方法がわかりません。支店ごとの担当者数は、支店ごとに違います。ご協力お願いします ■基本条件 ・毎日、支店がブック内の売上シートに入力(更新)し保存する。売上シートには、担当者が複数名登録されており、支店によって担当者数は異なります。 ・全店とも中身は同書式同形式ファイル  例)売上報告A店.XLS、売上報告B店.XLS・・・ ■マクロ(集計.XLS)でやりたいこと ・各支店ブックの売上シートから、担当者名(A5)・売上A(B5)・売上B(C5)を転記し明細表の作成 どなたか教えていただけますでしょうか?よろしくお願いします。

  • エクセル VBAについて

    初心者ですが、指導してください。 エクセルでVBA・マクロを使用して見積書を作っています。 AファイルとBファイルを順番に開いた状態で使用します。 Bファイルは見積書のテンプレートファイルになっています。 Bファイルで担当者が新しく見積書を作った場合、 ファイル保存というボタンで、指定のホルダ内に任意のファイル名で保存する事が可能になっています。 新しく保存したファイルをCファイルとします。 Cファイルを修正等する場合は、AファイルからCファイルを読み込みます。 Aファイルは、トップページ兼価格リスト表になっています。 ここで問題というか分からなくなっている部分は、 テンプレートファイルであるBファイルの時は、VBAの記述の際に、 Windows("B.xls").Activate と記載していますが、 任意のファイルであるCファイルの時は、 担当者によって、任意のファイル名で保存されているため ファイル名の取得?が必要になると思います。 その場合、どの様な記述をすればいいのでしょうか? なかなか上手に説明できませんが、よろしくお願いします。

  • EXCEL- VBA(CSVファイル→インポート)

    A列~F列になる複数(100個以上)のCSVファイルをエクセルファイルにインポートして更に個別にエクセルファイルとして保存したいのですが VBAでできるのでしょうか? 記憶マクロでやったらどうにもうまくいきません。 エクセルのVBAについては ほとんど知識ゼロなので困っております。 大変厚かましくありますが どなた様かご教授お願いできたらと思います!! 【元のファイルの状態】   ◆ファイル名「*.CSV」*は文字数それぞれ違います。   <例:tanaka.xls だったり 09福島.xls>  ◆入っているドライブ   TEXT;C:\Documents and Settings\AA_B\デスクトップ\練習  ◆A~F列にデータが入っている 【やりたいこと】    (1)A~F列はカンマ区切りで全て文字列としたい  (2)元のファイル名でエクセルとして保存したい「*.XLS」

  • エクセルVBAで対応する表の数値を取得したいのですか・・・

    こんばんは。教えていただけるでしょうか。 表形式で表現したかったのですが、無理のようでしたので、下のように表しました。 二つのシート[売上データ][原価表]があります。 [売上データ]にはランダムに各支店で売り上げた商品名がデータとしてあります。この[売上データ]のL列の「原価」に支店ごとに原価の違う原価の値を入れていきたいのですが、どのようにすればいいでしょうか。 支店ごとに違う原価の値は「原価表」のBからF列に商品名ごとに表になっています。 たとえば、[売上データ]のA列に“商品A”という商品が、J列の支店名に“札幌”とあったとすると、 [原価表]のA列の中から商品名を探して、B列の札幌の列から“商品A”に対応する原価の値を探して、[売上データ]のL列(原価)に順に入れていくというようにしたいのですがさっぱりわかりません。関数でもできると思うのですが、それも私には難しくわかりません。どなたか教えていただけるでしょうか。よろしくお願いします。 [売上データ] A1 商品名 B1 項目a C1 項目b ・ ・ ・ J1 支店名 ・ L1 原価 [原価表] A1 商品名 B1 札幌 C1 東京 D1 名古屋 E1 大阪 F1 福岡

  • VBA 検索方法

    VBA初心者です。よろしくお願いいたします。 ・VBAを保存するファイル名:aa.xls ・参照したいデータが保存してあるファイル名:bb.xls bb.xlsのファイルに下記のデータが保存されている場合 A列  B列 14:00  A 13:00  14:00   検索したい条件は「A列に時間が入力されているがB列は空欄のセル名」を 「aa.xls」のA2→B2~E2順に反映。 上記データからは、 A2にB3、B2にB4と入力されるようにお願いします。 回答お待ちしています。

  • エクセルVBAのプログラム

    A.xlsからB.xlsのファイル(最初はA..xlsのみが開いています)へのデータ転送をしたいのですが、プログラムが組めません(>n<)  すみませんが誰か助けてください。 行いたい作業は以下の通りです。 ※デスクトップにあるB.xlsを開く ※A.xlsのセル「A1~A5」をコピーしてB.xlsのAの列の列で空欄の行を見つけて、列と行を入れ替えて貼り付ける(もしB.xlsのA10までデータが入力されていたら、貼り付ける場所はA11~F11になります) ※B.xlsは作業終了後自動保存して閉じる その際に ※A.xlsのセル「A1」にはデータ名が記入されているのでB.xlsのAの列にその名前があれば、そこに上書きする形にしたい。 ※A.xlsのA2のセルには「55,23」のように二つの数字が「,」でつながって入力されているので、B.xlsに貼り付けるときには、二つのセルにわけてそれぞれの数字を貼り付けたい。 お手数おかけしますがよろしくお願いいたします。

  • エクセルVBAについて (データのマッチング)

    過去ログで解決できなかったのでここに書かせていただきます。 エクセルのVBで下記のプログラムを作成したいのですがうまくマクロが組めません。 ファイル名:TEST01.xls ファイル名:TEST02.xls があります。 TEST01.xlsにあるA列のデータとTEST02.xlsのA列にあるデータが一致したおり、かつTEST02.xlsのD列のデータが『×』の場合のみ、TEST01.xlsのB列に固定の文字(test)を入力し、TEST01.xlsのC列に入力されているデータを削除するプログラムを作りたいです。 ご存知の方がいらっしゃれば、ご教授よろしくお願い致します。

  • EXCEL VBA 複数ファイル値を集計

    yakkunnと申します。 お世話になっております。 下記処理を実現するためのEXCEL VBAコードをご教授いただけないでしょうか。 ■やりたい事 デスクトップに「実績集計.xlsx」というファイルがあります。 このファイルにボタンを配置し、このボタンをクリックしましたら、C3セルに記述されているファイルパス配下を見てその配下ファイルを全て開き、各ファイルの値を「実績集計.xlsx」に全て転記するVBAコードをご教授いただきたく思います。 ■転記内容 例えばA.xlsx~C.xlsxという3つのファイルがあるとします。この3つのファイルを開いて・・ 左が「A.xlsx」、右が[実績集計.xlsx」とします 処理付を転記・・B4セル⇒B7へ転記 コードを転記・・B7セル⇒C7へ転記 商品名を転記・・C7セル⇒D7へ転記 数量を転記・・ D7セル⇒E7へ転記 金額を転記・・ E7セル⇒F7へ転記 これをA.xls~C.xlsまで繰り返し、実績集計.xlsxに値をどんどん転記したいです。 金額のF列の最後に合計金額が出力されれば最高です。 よろしくお願いいたします。

  • エクセルVBA ファイルが開かない

    Windows XP 2台で使用していますが、1台は下記、記述でファイルが開き、片方は、ファイルが開きません。 何か、記述に問題又は、追加等が必要なのか教えてください。  TFILE = "C:\TEMP\売上データ.XLs"  Workbooks.Open TFILE  よろしくお願いします。    

このQ&Aのポイント
  • 付き合って1年半の彼氏が、喧嘩から結婚相手として見ることができないと別れを望んでいますが、私はまだ彼氏への気持ちがあるため別れることができません。
  • 結婚相手として見れない理由は、一緒にいると喧嘩が多いことや性格の不満などですが、その理由に対して自分は完璧なのかと突っ込まれてしまいました。
  • 意思が弱いと言われても、別れたくない気持ちや自分の意見を尊重することも大切です。
回答を見る

専門家に質問してみよう