- ベストアンサー
複数のファイルを既定ファイルに転記する方法
- 同じフォルダ内にある500個のブック(1シート)から、一担当者のブックを選択し、既定ファイル(最大9シート)に4箇所転記する方法を教えてください。また、転記が終了したら、ファイルを保存する方法についても教えてください。
- マクロ初心者のため、マクロを作成する方法がわかりません。どなたか教えていただけないでしょうか。
- コピー元の範囲とコピー先の範囲が異なるため、フォーマットが壊れないように値の貼り付けをしたいです。どのように設定すればよいでしょうか。
- みんなの回答 (4)
- 専門家の回答
関連するQ&A
- 複数ブックを纏めて1ブックの1シートずつにコピー
仕事で大量の処理をしなければならず、マクロ化を考えています。 どなたかご教示頂けないでしょうか。 大変困っています助けて下さい。 既定ブック(9シート1,2,3,4,5,6,7,8,9と名前をつけています。レイアウトは全て同じです。)をコピーした後に複数のブック(1シートのみです。既定ブックとほぼレイアウトは一緒です。)を指定し、一部分コピーをし、既定ブックに1シートごとペーストし、(担当者により複数ファイル数は異なります)名前付けてブックを保存後閉じるという作業をマクロ化したいと思っています。 500ファイルを担当者別にコピー&ペーストしなければならないので、是非ご教示頂けないでしょうか。何卒お願い致します。 なお、ペースト箇所は以下になります。(全てセルの結合をしております。) 【貼付箇所】 コピー元:Range("G6:P13").Select → コピー先:Range("G6:P13").Select コピー元:Range("V5:AD11").Select → コピー先:Range("V5:AD11").Select 【値貼付箇所】 コピー元:Range("AA23:AD27").Select → コピー先:Range("AG26:AG30").Select コピー元:Range("G23:Z27").Select → コピー先:Range("AH26:AH30").Select
- 締切済み
- その他MS Office製品
- 複数のブックからデータを転記するマクロについて
こんにちは。 VBAの素人なのでネットや本などで自分なりに調べましたが、 どうにも解決できないので、ご教示いただけませんでしょうか。 複数のブックにある同一セル番地にある データを別のブックにまとめたいのですが、 ブック数が500程度あり、マクロでうまくできないか悩んでいます。 (1)転記元ブックを開く。 (2)転記元データをコピーする。 (3)転記先ファイルのセルに貼り付ける。 (4)転記元ブックを閉じる。 の繰り返しだと思うのですが、(2)ができず困っています。 ちなみに、500のブックとまとめるブックも同じフォルダにあります。 具体的には、転記元ブックは以下のような形で、A列に様々な温度のデータが縦に並んでいます。 A列 1行 温度 2行 27 ←ここのみ抽出したい 3行 28 4行 30 それぞれのブックのA2番地の温度データのみを抽出し、転記先ブックのA2からA500までまとめたい。 組んだマクロは以下です。 ------------------------------ Sub 特定フォルダ内ブックを並べ替えて転記() Dim myDir As String, myName As String, myBook As Workbook Dim motodata As Range, sakidata As Range '集計用のブックがあるフォルダ名を指定 myDir = "D:\VBA練習" myName = Dir(myDir & "\" & "*.xls") Do While myName <> "" '↓転記先の最新レコード位置を取得する Set sakidata = Range("A65536").End(xlUp).Offset(1) '↓(1)指定した名前のブックを開いて変数に格納する Set myBook = Workbooks.Open(Filename:=myDir & "\" & myName) '↓(2)転記元を取得する Set motodata = myBook.Range("A2") '↓(3)転記先に貼り付ける motodata.Copy sakidata '↓(4)開いたブックを閉じる myBook.Close myName = Dir() Loop End Sub ------------------------------ mybookというキーワードを使用して、A2セルデータをコピーする構文をご教示いただけませんでしょうか。 以上、長々となってしまいましたが、何卒アドバイスの程お願いいたします。
- ベストアンサー
- Visual Basic
- 数式の転記
一つのブックの一つのシートに入力した数列にわたる数式を複数のブックの複数のシートにも転記できるようにしたいのですが、いい方法はありますでしょうか? 例えば、BOOK1のSHEET1のD3:D150に=R[-1]C[3]+1という数式を入力したとすると、それが他の複数のブックの複数のシートのD3:D150にも自動的に同じ数式(=R[-1]C[3]+1)として入力されるという事です。同じフォルダーにある数十のブックで、シートの数は1つのブックで10ぐらいあり、コピーや手入力では気が遠くなるほどの時間が掛かってしまいます。ちなみに、ブックの名前はBook1、Book2・・・となっていますが、シート名はそれぞれ固有名詞でつけられています。毎日の作業になりますのでこれが出来るとものすごい時間の節約になります。 現在の知識はマクロを自動記録し、エディターを使って簡単な変更を加えることをはじめたレベルです。本などで体系的な勉強をしたことが無いので驚くほど当たり前のことを知らなかったりしますが、どのようなマクロを使用するべきかアドバイスを是非よろしくお願い致します。自動転記でもマクロを開始して転記する方式でもどちらでもかまいません。お助け下さい。
- ベストアンサー
- オフィス系ソフト
- EXCELで複数のBookにマクロを使用して転記する方法
Book1にSheetが5つ(Sheet名 あ、い、う、え、お)あります。 このSheetをマクロを使用して、それぞれ5つの別のBookにそのSheet名をつけて、 元と同じ名前のSheet名で保存する方法を教えて下さい。 コピー元 Book1 コピー先 Book名 あ Sheet名 あ.xls Book名 い Sheet名 い.xls Book名 う Sheet名 う.xls Book名 え Sheet名 え.xls Book名 お Sheet名 お.xls
- ベストアンサー
- オフィス系ソフト
- ブックの転記で計算式も転記したい
ブックの転記で計算式も転記したい データを転記するマクロを作成しました。 【知りたいこと】 その1: 転記元となるブックを毎回「master」という名前に変更してから作業をしています。 この一手間を省きたいと考えているのですが、開いているもう一つのブックを自動で 転記元の〔mst〕と認識させて作業を進めるにはどうしたら良いでしょうか? その2: 転記先のD列に、転記元(master)E列の数式を転記させるにはどうしたら良いでしょうか? このE列には、数値の値だったり、足し算・引き算・割り算などの計算式が混在しています。 また、転記先の書式は保ち、値もしくは計算式だけを転記したい。 宜しくお願い致します。 ---------------------------------------------------------- Sub 値の転記() Dim ent As Worksheet, mst As Worksheet Dim i As Integer, j As Integer Dim lstCel As Integer Set ent = Workbooks("転記先").ActiveSheet Set mst = Workbooks("master").ActiveSheet '←★その1:このブック名の指定 lstCel = mst.Cells(Rows.Count, "B").End(xlUp).Row For i = 1 To lstCel ent.Cells(j + 2, "A") = mst.Cells(i + 2, "A") ent.Cells(j + 2, "B") = mst.Cells(i + 2, "B") ent.Cells(j + 2, "C") = mst.Cells(i + 2, "D") ent.Cells(j + 2, "D") = mst.Cells(i + 2, "E")'←★その2:ここだけ数式を転記 j = j + 1 Next i End Sub ----------------------------------------------------------
- ベストアンサー
- その他MS Office製品
- ExcelVBAの転記(1つのひな形へ複数シート)
お世話になります。ExcelVBAを少し学んだ程度の者です。 1つのExcelファイルに複数存在する個別のシートから、1つのひな形シートへ転記する方法に頭を悩ませております。イメージとしては名簿管理のようなものとご理解してください。 複数存在するシート(約200シート)には、項目名に対するデータ(例えば、名前や住所などが定められたセルに入力されています)が揃っておりますが、書式の変更によりひな形のシートへ転記する必要があります。 200ほどのシートには、M10セルには名前が、B15セルには住所、C16セルには電話番号が……という具合に入力されています。これらのデータをひな形シートでは、N5セルに名前、C13セルに住所、D14セルには電話番号などを転記する必要があります(セル番地は適当です)。 ひな形シートは1枚で、マクロを実行する際にひな形シートをコピーして(Xとします)、200ほどの個別のシート(A、B、C……)を転記しようと思っております。A、B、C……に入力された複数の値は項目別にCells(i,j).Valueを、XへCells(x,y).Valueへ転記すれば良いと考えておりましたが、上手くいきません。ひな形をコピーしたXのシートへ上手く転記ができず、Aを転記したシートばかりが量産され、B、C以降のシートへ制御が移っていないようです。恐らく、Workwsheetオブジェクトのカウンタ変数に問題があると思われます。 VBAのコードとしては下記のように記述しております。 Sub SheetCopy() Application.ScreenUpdating = False Dim cnt As Long 'シート数カウント変数 Dim i As Long 'シート用のカウンタ変数 Dim wb As Workbook 'コピー元 Dim ws1 As Worksheet 'コピー元 Dim ws2 As Worksheet 'コピー先 '1がコピー元で2がコピー先 cnt = Worksheets.Count 'シート数をカウント i = 2 Set wb = Workbooks("転記用.xlsm") Set ws1 = wb.Worksheets(i) Set ws2 = wb.Worksheets("ひな形") For i = 1 To cnt ws2.Copy after:=Worksheets(i) Set ws2 = wb.Worksheets(i) ws2.Cells(2, 2).Value = ws1.Cells(2, 13).Value '名前 ws2.Cells(3, 2).Value = ws1.Cells(6, 10).Value '住所 以下、同様の転記処理を記述しています。 Next i End Sub 上記のコードを、パッと見たところ、コピーはしているものの、転記先がコピー元になっているのも原因だと思います(コピー先へ転記する方法が現時点でわかりかねます……ここがネックだと考えております)。 ご知見のある方々から、アドバイスをいただけると幸いです。 どうぞ、よろしくお願い申し上げます。
- ベストアンサー
- Excel(エクセル)
- マクロ 値の転記 再度
マクロ 値の転記 再度 昨日はkyboさんに解答を頂き大変助かりました。 ありがとうございました。 教えて頂いたコードを別のマクロでも活用しよう思ったのですが どのように改変していけばいいのかまた悩んでいます。 度々で申し訳ありませんが、どなたか宜しくお願い致します。 やりたいこと 転記元のBに0以外の数字が入っている場合、転記先のA列に 同じ値を常に5回転記させたい。 "あ"を5回転記→1行あける→"う"を5回転記→(続く・・・) ★Sheet1 転記先(7行目から転記したい) A ------------------- 7 あ 8 あ 9 あ 10 あ 11 あ -------------------- 12 空行 -------------------- 13 う 14 う 15 う 16 う 17 う -------------------- 18 空行 -------------------- 19 以下 5つの纏まりの枠が300行位まで続く ★Sheet2 転記元(5行目からデータがある) A B -------------------- 5 あ 6 あ 7 あ計 100 -------------------- 8 空行 -------------------- 9 い 10 い 11 い 12 い計 0 -------------------- 13 空行 -------------------- 14 う 15 う 16 う 17 う計 500 -------------------- 18 空行 19 (以下、続く) Sub テスト() Dim i As Long '転記元のデータ開始行は5行目 For i = 5 To 300 '転記元のB列が0以外 If Worksheets("転記元").Cells(i, "B") <> 0 Then Worksheets("転記先").Cells((i - 1) * 5 + 1, "A").Resize(5) _ = Worksheets("転記元").Cells(i, "A") End If Next i End Sub
- ベストアンサー
- その他MS Office製品
- Excel マクロ 値の転記
Excel マクロ 値の転記 Sheet2をSheet1に転記したいのですが、A列だけは3回同じ値を転記 するのには、※をどのように変えたらいいのでしょうか? 宜しくお願い致します。 〔Sheet1〕転記先 A B あ 10 あ 20 あ 30 い 40 い 50 〔Sheet2〕転記元 A B あ 10 い 20 う 30 え 40 お 50 Sub テスト() Dim i As Long For i = 1 To 30 '↓※ココをどう書いて良いのかが分かりません Worksheets("Sheet1").Cells(i, "A") = Worksheets("Sheet2").Cells(i, "A") Worksheets("Sheet1").Cells(i, "B") = Worksheets("Sheet2").Cells(i, "B") Next i End Sub
- ベストアンサー
- その他MS Office製品
- 複数のブックから特定データ群を新ブックにまとめたい
こんにちは。 EXCEL2007について、ご教示ください。 EXCEL2007で、複数ブック内の特定シート上にある特定のデータ(複数) を特定ブックにまとめたいのですが、うまくできずに悩んでいます。 <やりたいこと> ・参照元は特定フォルダ内にある全ファイルが対象(100程度) ・ブック内の特定シートが対象(シート名は ・コピー (1) 元シートのA4~F4セル(セル結合されています)のデータを、 先シートのB2セルへコピー (2) 元シートのG4~L4(セル結合)のデータを、先シートのC2セル へコピー (3) 元シートのG6~R6セルのデータを、先シートのE2セルへコピー ・コピー2 次ブックを読み込み、1行下(B3、C3、E3)にコピーする。 ・コピー3 以降1行下にコピーし、ファイルが無くなるまで繰り返す。 以上ですが、マクロでできるように教えていただけないでしょうか。 よろしくお願いいたします。
- ベストアンサー
- その他MS Office製品
- 特定列の転記とシート作成とシート名変更。
A1からBU160までの表があります(1行目はタイトル行 表は可変です) この表の特定列(例えばBU列)の文字が入っているところまで選択し(タイトル行を除き)コピーするにはどうすればよいですか? また、貼付け先の転記用ブックにおいて、もともとあるシートをコピーし、新たにシートを作りたいのですが、できたシート名に日付をいれるには、どのようなマクロを組めばよいですか?
- ベストアンサー
- オフィス系ソフト
お礼
お礼が大変遅くなり申し訳ございません。 次に伺うのに大変時間を要しますので、 再度質問させて頂きます。 有難うございました。