• 締切済み

2003Excel 別シートからのセル代入保存繰り返し方法について

エクセル初心者です。 仕事の資料作成でとても困っています。 分かる方教えてください。 エクセルシート1と2があるとします。 シート1   A B C D 1   2   3 4 ・ ・ ・ シート2   E  F  G  H 5 ○  ×  △   6 ▲  ☆  ★   7 □  ▽  ● 8   ・ 9   ・ 10  ・ 11  ・ ・   ・ ・   ・ 【シート1のA1、A2、A3にシート2の5E、5F、5Gを入れて名前を付けて保存】 シート1   A B C D 1 ○ 2 ×  3 △ 4 【シート1のA1、A2、A3にシート2の6E、6F、6Gを入れて名前を付けて保存】 シート1   A B C D 1 ▲ 2 ☆  3 ★ 4 【シート1のA1、A2、A3にシート2の7E、7F、7Gを入れて名前を付けて保存】                  ・                  ・                  ・ と言うのを繰り返したいのですが分かる方教えて頂けませんか? 宜しくお願いします。   

みんなの回答

  • wareware7
  • ベストアンサー率21% (3/14)
回答No.3

No.1です。 サイトに公開されているようなマクロはあくまでも例なので そのままコピペでは思ったように動かない場合が多く 必ずと言っていいほど、環境に合わせた手直しが必要になります。 なので面倒ですが、地道に手作業でされる事をオススメします。 これからマクロ(VBA)を勉強して、手直しをして・・・とやっている間に 終わっちゃうと思いますよ(^^) ちなみに、完全に決め撃ち(このセルをここにコピペして、ファイル名はこう!みたいな感じ)でざっくり作って見ました。 もし、マクロの勉強をされるようなら参考にしてみてください。 http://kissho.xii.jp/1/src/1jyou95030.xls.html DLKeyは1です。 ※ファイルはデスクトップに保存して下さい。  マクロを有効にして、シートの内容を確認した後  ツール→マクロ→マクロから実行ボタンを押して下さい。

参考URL:
http://excelvba.pc-users.net/
  • 135ok
  • ベストアンサー率34% (26/75)
回答No.2

1例として、ご参考程度で。 添付資料を参照下さい。 sheet2 表から、シート1に表示方法に変換させる。 B1 ここにD列の数字を入れて変化させる。 B2 =OFFSET($D$4,MATCH($B$1,$D$5:$D$1000,0),MATCH(A2,$E$4:$G$4,0)) 次に、次の作業をマクロで記録する。 1 マクロの記録開始 2 黄色の部分をコピーする。   *色づけは参考のため。 3 シート1に 形式を選択→値で貼り付け。 4 マクロの記録終了。 5 表示→ツールバー→フォームでボタンを作成。 6 ボタンにマクロの登録。 作業として、B1にD列の数字を入力しボタンを押せば、シート1に値が表示されます。 保存方法等は、シートをコピーして保存するなりすればよろしいかと。

  • wareware7
  • ベストアンサー率21% (3/14)
回答No.1

手作業でとなると大変なのでマクロで完全自動化できませんか?というご質問でしょうか? もしそうなのであれば、マクロを作成する場合、問題となる点が1つ。 「名前を付けて保存」です。 マクロを使ったとしても保存のタイミングでファイル名を入力しないといけなくなる為 完全自動化には出来ません。 「名前をつけて保存」ではなく自動でその都度シートを増やしていくとか シート1、シート2の様な規則性のある名前でどんどん自動保存してしまうといった方法であれば可能だと思います。

a603044
質問者

お礼

さっそくのご回答ありがとうございます。 保存するシートの数は、100シートほどあり、1シートで1つのエクセルファイルで保存することを考えています。現状完全自動化までは、考えていません。 決まったファイル名があるので、マクロと言うのが出来るのであればコピペを考えています。 今回作成する上で参考になるサイトなどあれば教えていただけないでしょうか? どうかご教授して頂けないでしょうか? 宜しくお願いします。

関連するQ&A

  • エクセルにて複数セルの並び替え

    こんにちは、エクセルについて教えてください。列はA~Hまで、行は1~200行ほどに値が入っています。 例えばValueが以下のようだとします。 A1 B1 C1 D1 E1 F1 G1 H1 A2 B2 C2 D2 E2 F2 G2 H2 ... これらのValueを、別のSheetに以下のように並び替えたいのですが、 A1 B1 C1 D1 E1 F1 G1 H1 A2 B2 C2 D2 E2 F2 G2 H2 A3 B3 ...と、これがA200~H200の行分まで。なのでPaste後は800行になります。どうにかマクロか何かで簡単に 出来ないかと思い、どなたかご教授いただければと思います、よろしくお願いします!

  • エクセルで別シートに抽出

    エクセルで同じBOOKに以下のようなシートがあります。 【sheet1】 A B C D E… 5 7 8 9 3… 3 3 6 5 6… 【sheet2】 A B C D E… 2 7 8 5 3… 6 3 9 5 7… 【sheet3】 A B C D E… 1 8 5 7 6… 1 3 8 5 7… こんなシートがsheet1~sheet50まであり、これを 【sheet51】に A A A  5 2 1 3 6 1 【sheet52】に B B B 7 7 8 3 3 3 のようになるだけ簡単に抽出したいのですが… どなたか、よろしくお願いします。

  • エクセルのセル抽出でチェックシート

    複数ブックの同じシートの特定セルの内容を抽出し、1つのチェックシート用のエクセルに貼り付けたいのですが、可能でしょうか。 複数ブックは1つのフォルダの中に入れます。特定セルは複数のシートにまたがっています。 Book1 Sheet1:A5, B10, D20/Sheet3:C1, H4/Sheet5:F7 Book2 Sheet1:A5, B10, D20/Sheet3:C1, H4/Sheet5:F7 Book3 Sheet1:A5, B10, D20/Sheet3:C1, H4/Sheet5:F7  ・  ・

  • Excelの作業状態の保存について

    こんにちは。 石ころといいます。 Excelについて以下の質問を受けているのですが、よくわからず返答に困っています。ご存知の方いらっしゃいましたら助言お願いいたします。 ExcelのシートをA、B、C、D、Eの5つを開いています。A、B、C、Dの4つの計算式の結果が、5つ目のEシートに流れています。このEシートを名前をつけて保存をしたいのですが、名前をつけて保存ができず、作業状態の保存しかできない。最初は名前をつけて保存ができたのに、何故 できなくなったのか? とのことなのですが、作業中に名前をつけて保存ができなくなり、作業状態の保存しかできなくなることなどあるのでしょうか。 原因・対応策などありましたら宜しくお願いいたします

  • 別のシートにデータを分けて並べるには

    このような訪問予定表をつくっています。 [D]は営業所で[E]は顧客IDです。 [A] [B] [C]  [D] [E] 1]1/1 AM     渋谷 a 2]1/2 AM 10:00 新宿 b 3]1/1 AM 11:00 銀座 c 4]1/2 PM    銀座 d 5]1/1 PM 13:00 新宿 e 6]1/1 PM    新宿 f 7]1/2 AM  9:00 渋谷 g 8]1/2 AM    新宿 h 9]1/2 AM  9:00 新宿 i これを今までは手作業で、以下のSheet2に移行していました。 [I]列までしかありませんが、15日分が右方向にに連続しています。 見苦しいですが、A列は営業所名、B・D列は時刻、C・E列は顧客IDです。 __[A]_[B]_[C]_[D]_[E]_[F]_[G]_[H]_[I]_ 1]__|__ 12/1 ___|_ 12/2_|____ 2]__| AM _|PM___|AM____|PM___ 3]新宿|____|13:00_e|___ h |____ 4]__|____|___ f|10:00  b |____ 5]__|____|____| 9:00  i |____ 6]__|____|____|_____|____ 8]銀座|11:00 c|____|_____|__ d_ 9]__|____|____|_____|____ 10]__|____|____|_____|____ 11]__|____|____|_____| 14]渋谷|__ a |____| 9:00  g | (以下省略) これを関数や、VBAで簡単にする方法はないでしょうか? 環境はExcel2000です。わたしはVBAはまだ初心者です。

  • エクセルで50行ごとに区切ったデータをシートに分割したい

    エクセルで2000行ほどある一枚のシートを50行ごとに (1-50)(51-100)(101-150)…と分割して、一つずつ 新しいブックで保存する作業があります。 今までは50行ごとにコピーして新しいブックにペーストを 繰り返してましたが、大量にきたもので困ってます。 何か自動化などできないことでしょうか? ご回答お待ちしております。 参考にシートは以下のような形式です。   A  B  C  D 1  a  1   1  1 2  b  1   2  3 3  c  2   3  4 4  d  5   6  7 5  e  7   8  9 6  f  2   3  4  7  h  5   6  7 8  g  8   9  1 9  n  2   3  4 10 n  5   6  7 ・ ・ ・ 50 j  5   6  7

  • エクセルで別シートのデータを抽出

    ~シートA~   A B C D E F G  ┌─────────────┐ 1│ │10│20│30│40│50│60│  │ │───────────│ 2│ │11│21│31│41│51│61│  │4│───────────│ 3│月│12│22│32│42│52│62│  │ │───────────│ 4│ │13│23│33│43│53│63│  │ │───────────│ 5│ │14│24│34│44│54│64│  └─────────────┘ 6  ┌─────────────┐ 7│ │10│20│30│40│50│60│  │ │───────────│ 8│ │11│21│31│41│51│61│  │5│───────────│ 9│月│12│22│32│42│52│62│  │ │───────────│ 10│ │13│23│33│43│53│63│  │ │───────────│ 11│ │14│24│34│44│54│64│  └─────────────┘         ・         ・         ・ ~シートB~   A B C D E F G  ┌─────────────┐ 1│ ▽ │ │ │ │ │ │  │ │───────────│ 2│ │ │ │ │ │ │ │  │○│───────────│ 3│月│ │ │ │ │ │ │  │ │───────────│ 4│ │ │ │ │ │ │ │  │ │───────────│ 5│ │ │ │ │ │ │ │  └─────────────┘ ↑はリストボックスで1月~12月の値が入っている。 上記条件でシートBのリストボックスから選んだ月のデータをシートAの表から該当する月のデータを全て抽出したいのですが、どのようにすればよろしいでしょうか。

  • ★「フォルダ内の全エクセルシートを一括処理」★

    ★「フォルダ内の全エクセルシートを一括処理」★ エクセルのマクロのコードを教えていただけますでしょうか。 ★VBAの初心者です★ どなかた詳しい方、下記の内容を実行するためのコードを教えていただけませんでしょうか。 あるフォルダ内に入っている全エクセルシートの「sheet1」セルA1、B1、C1にある値を、デスクトップ上に保存されている別のエクセルシート”X” のF2、G2、H2、にそれぞれ貼り付けたい。 フォルダ内のエクセルシートは複数あるので、エクセルシートXのセルF2、G2、H2の次はF3、G3、H3、F4、G4、H4とそれぞれ1番ず つ下に貼り付けていきたい。 フォルダを検索するところから、全てのコピーが終了するところまで教えていただけると幸いです。 お忙しいところ恐れ入りますが、よろしくお願いいたします。

  • Excelで飛び飛びのセル(列)を参照したいのですが…その2

     ある「sheet1」で、G1="A",H1="B",I1="C",J1="D",K1="E",L1="F",M1="G",N1="H",O1="I",P1="J",Q1="K",・・というように文字が入力されているとすると、5列飛びの値A,F,K・・・(G1,L1,Q1・・・)が欲しいのです。そして、その値が「sheet2」に、C5=A,D5=F,E5=K,F5=P・・・となるようにしたいのです。ただ数値が5ずつ増加するのではなく、そのセルに入力されている文字列を参照したいのです。  それをまた、「sheet1」の、G2="A",H2="B",I2="C",J2="D"・・・の値でも同じ事をしたいのですが・・・。  よろしくお願いします。

  • エクセル 入力シートのデータを別シートに書き込む

    エクセル 入力シートのデータを別シートに書き込む 1.Sheet1のA2に数字、B2に数字、C2に数字、D2に数字、E2に数字、F2に数字、G2に数字、にを入力する。 2.内容確認後、入力ボタンを押すと、 Sheet2のF2にSheet1のA2の数字、 Sheet2のH2にSheet1のB2の数字、 Sheet2のI2にSheet1のC2に数字、 Sheet2のJ2にSheet1のD2に数字、 Sheet2のK2にSheet1のE2に数字、 Sheet2のL2にSheet1のF2に数字、 Sheet2のM2にSheet1のG2に数字が反映され、sheet2の入力されたデータが一列づつたされていく。 つまり。sheet1は入力シートで、同じセルに値を入力します(次回はデータが上書きされる)が、sheet2では、集計表の1列ずつ下に新しく記録されていく。 このような入力フォーム(マクロ)を作りたいと思っています。 わかりづらい質問で申し訳ありませんが教えていただけませんでしょうか。 よろしくお願いします。

専門家に質問してみよう