- ベストアンサー
VBAでおしえてください
お世話になっております。 今、5個のエクセルファイルがあり、それぞれ複数のシートで構成されていますが、シート名、並び順は、5個のファイルとも共通です。 シート名は、sheet1から、A,B,C,D,・・・・と割り振っております。 ここで、同じシート名のdataを同じシート内に集めたいです。。 (元DATAの形式) ファイル1 SheetA SheetB セル DATA セル DATA B2 2 B2 8 B3 3 B3 5 B4 4 B4 6 ファイル2 SheetA SheetB セル DATA セル DATA B2 6 B2 2 B3 5 B3 3 B4 1 B4 4 VBA変換後 ファイル1 SheetA セル DATA セル DATA B2 2 C2 6 B3 3 C3 5 B4 4 C4 1 よろしくお願いいたします
- みんなの回答 (10)
- 専門家の回答
質問者が選んだベストアンサー
その他の回答 (9)
- hofuhofu
- ベストアンサー率70% (336/476)
- yokomaya
- ベストアンサー率40% (147/366)
- yokomaya
- ベストアンサー率40% (147/366)
- yokomaya
- ベストアンサー率40% (147/366)
- yokomaya
- ベストアンサー率40% (147/366)
- yokomaya
- ベストアンサー率40% (147/366)
- zap35
- ベストアンサー率44% (1383/3079)
- zap35
- ベストアンサー率44% (1383/3079)
関連するQ&A
- Excel VBA シート間のコピー・ペースト
いつもお世話になります。 「sheetA」「sheetB」の二つのシートがあります。 このシート間でのコピー・ペーストをしたいのです。 (1)「sheetA」の『R1C4』を「sheetB」の『R1C2』に、 「sheetA」の『R1C9』を「sheetB」の『R1C7』に、コピー・ペースト。 尚、最終行は、毎回違います。 (2)「sheetB」の『R1C1』には、先程、ペーストした、『R1C2』に値があるだけ、 ≪○≫印を入れたいのです。 以上、よろしくお願いします。
- ベストアンサー
- その他MS Office製品
- excelのオートフィル
すいません、いろいろと調べてみましたがわからなかったので質問させてください。 あるシート(sheetA)に集計データがあり、それを別シート(sheetB)に表示したいとき、 シート名を固定し、参照するセル番号を10刻みで増やしたい場合、オートフィルで可能でしょうか? 具体的には、sheetAのAE4~AE242およびにランダムな数値データがあった際に、 ・sheetBのB3~B26にsheetAのAE4,AE14,AE24・・・と十刻みでコピー ・sheetBのC3~C26にsheetAのAE5,AE15,AE25・・・と十刻みでコピー ・sheetBのD3~D26にsheetAのAE6,AE16,AE26・・・と十刻みでコピー ということをしたいと思っています。 拙い文章で恐縮ですが、どなたか教えていただけると幸いです。 よろしくお願いいたします。
- ベストアンサー
- オフィス系ソフト
- sheet1セルA1のデータ切り替えについて
Excel2010に3つのシートsheetA、sheetB、sheetC があります。 それぞれセルA1のデータは,sheetAのA1=ブランク、sheetBのA1=b、sheetCのA1=c とします。 この状態で、 sheetBがActiveの時に、sheetAのA1=b sheetCがActiveの時に、sheetAのA1=c になるような関数、もしくはマクロを組み込みたいと思います。 どのようにしたら実現できますでしょうか? よろしくお願いします。
- ベストアンサー
- その他MS Office製品
- エクセルで自動的に範囲選択させるには?
職場のエクセルの表を壊してしまいました。チカラを貸してください。 SHEETaに表があります。 常に表の最終行にデータを入力しています。 A10 B10 C10 D10 E10 3月3日 りんご 8個 みかん 5個 この一部を同じブックのSHEETbの表の最終行に =IF(SHEETa!A10="","",SHEETa!A10)といったふうに返しています。 A15 B15 C15 3月3日 みかん 5個 ちなみにSHEETaとSHEETbのデータの並び順は違います。 行の番号も違います。 作業としては、SHEETaを入力したあと、SHEETbの最終行を1行だけ 印刷します。 SHEETaを入力すると自動的にSHEETbの最終行が選択されるようにするにはどうしたらいいのでしょうか?
- 締切済み
- オフィス系ソフト
- エクセルのデータ移動(マクロ使用)
エクセルのSheetAを使用して入力画面を作成し、そのデータをSheetBやSheetCへリンクさせて印刷を行っています。1件ごとの入力になるので、データが残りません。このSheetAのデータを別のSheetDか別のファイルへ行ごとの横一直線という形式で残したいのですが、どうすればよろしいでしょうか? また、反対に移動したデータを戻す場合などどうしたらいいのでしょうか? マクロを利用すればいいように思うのですが、マクロは印刷程度の簡単なマクロの知識しかありません。 もしも、何か方法があるようでしたら、いろんな応用が利きそうなので、今後に向かって幅が広がりそうなので、是非詳しい方お願いします。 <例> 1つめのデータをSheetAへ入力 SheetA セルA1 h16.12.1 B2 ○○商事 C3 △△-□□ ↓(データー移行) SheetD セルA1 h16.12.1 B1 ○○商事 C1 △△-□□ (この間にSheetAのデータはすべて削除) 2つめのデータをSheetAへ入力 SheetA セルA1 h16.12.3 B2 ●●販売 C3 ▲▲-■■ ↓(データー移行) SheetD セルA1 h16.12.1 B1 ○○商事 C1 △△-□□ A2 h16.12.3 B2 ●●販売 C2 ▲▲-■■
- ベストアンサー
- オフィス系ソフト
- エクセル2003(VBA)で複数条件の合計を出したい
エクセル2003(VBA)で日別個人集計表を作っています。が 配列関数を使うとほぼ動かない量のデータがあり、ユーザー関数等 を作って処理すべきなのかなと思い、ご質問させて頂きました。 一括処理してくれるようなVBAを希望しております。 下記に具体的なデータを記載しますので、どうかお知恵をお貸し下さい。 よろしくお願い致します。 ○元の参照データ(SheetA) ※レジのデータです A1: (日時) B2: (担当) C2: (売上額) A2: 09/03/03 08:26 B2: 伊藤 C2: 1,000 A3: 09/03/04 18:12 B3: 武田 C2: 1,000 A4: 09/03/05 15:48 B4: 甲斐 C4: 1,000 A5: 09/03/05 09:24 B5: 迫田 C5: 1,000 A6: 09/03/04 03:23 B6: 武田 C6: 2,000 ・ ・ 以下30000行ぐらいあります。 ○日別個人集計表(SheetB) A1: (日付) B2: (担当) C2: (売上額) A2: 09/03/03 B2: 伊藤 C2: 1,000 ←下記参照 A3: 09/03/04 B3: 武田 C2: 3,000 A4: 09/03/05 B4: 甲斐 C4: 1,000 A5: 09/03/05 B5: 迫田 C5: 1,000 ※C列には現在配列関数を入れ、オートフィルしていますが30行(人)を超えるともう動きません C列は現在、下記の通りです。 例){=SUMPRODUCT(TEXT(SheetA!$A$2:$A$65536,"yy/mm/dd")=A2)* (SheetA!$B$2:$B$65536=B2),SheetA!$C$2:$C$65536)}
- ベストアンサー
- その他MS Office製品
- 【Excel】印刷前の設定に戻す
Excel2003を使用しています。 4シート(9ページ)を作業グループにして、印刷前にセルの塗りつぶしを解除して印刷。印刷終了後、セルの塗りつぶしを元の設定に戻す。 というマクロを作りたく、とりあえず、「新しいマクロの記録」でやってみました。 Sheets(Array("SheetA", "SheetB", "SheetC", "SheetD")).Select Sheets("SheetA").Activate で、コードが始まっていました。(SheetA,B,C,Dはシート名とします) このシート名の部分をシート名ではなく、シート番号で指定したいのですが、どのようにすればいいでしょうか?(単にシート番号に変更しても、エラーが出てしまいましたので。。。) マクロ勉強中でして、『Array』というのも今回初めて目にしました。よろしくお願いします。
- ベストアンサー
- オフィス系ソフト
- 【エクセル】結合したセルからのリンクについて
教えてください! エクセルのワークシート間のリンクについてです。 ワークシート(SheetA)内に結合したセルを作ってその中で計算式を作っているのですが、その計算された値を他の作業ワークシート(ここでは仮にSheetBとします)にリンクさせようとすると、SheetBのセル内に ='SheetA'!C1301:I1304 というように表示され、確定すると#VALUEとなってしまいます。また、リンク先のセルを選択するだけで固定された状態('SheetA'!$C$1301:$I$1304)になってしまいます。 毎回、:以降を消去して値をリンクさせているのですが、そのようなわずらわしい作業を行わずにリンクをさせたいのですがどのようにすればいいのでしょうか?設定で変更ができるようであればその方法を教えて下さい。 よろしくお願いします!
- ベストアンサー
- オフィス系ソフト
- エクセルVBAで困ってます。
エクセルVBAで困っています。 データ入力済みのシートが2つあります。 シート名を「Sheet1」「Sheet2」とします。 「Sheet1」のA列のデータが「Sheet2」のA列のデータと一致した時に それぞれのシートのセル番地を取得したいのですが出来ません。 教えて下さい。 データの並び順は「Sheet1」と「Sheet2」で異なります。
- ベストアンサー
- その他(プログラミング・開発)
- エクセルで入力済みのセルのみ見つけて・・
エクセルで入力済みのセルだけを見つけ出して、 指定した場所に並べる作業をマクロで1発で出来るようにしたいのですが、その方法を教えてください。 シートが37シートあります。(sheetA1~sheetA12,sheetB1~sheetB12,sheetC1~sheetC12,sheet37) それぞれセルC5からC20まで数値が入っていますが、 最終行はC20とは限りません。(sheet37はまとめるためのシートで空白) C15が最終行の場合もあれば、C18が最終行の場合もあります。 各シートそれぞれ最終行が違います。(列は同じですスタートもC5です) 各シートのC列の入力済みのセルの数値をsheet37のB1セルから順番に縦に並べたいのです。 A,B,Cのシート順にC列に入力された数値を縦に並べます。 空白は無しで詰めて並べます。 これを1回の作業でできるマクロを教えてください。 それから入力済みの最終行を見つけ出すマクロの部分を表示して頂けるとありがたいです。 宜しくお願いします。
- ベストアンサー
- オフィス系ソフト
お礼
できました^^ >前質問の回答を読んで急いでいるのは解りましたが、丸投げばかりで>はいつまでも身につきませんよ。 →おっしゃるとおりです。 身にしみました。本当にありがとうございました。