
Excel 2003を利用している初心者です。
質問させていただきます。
エクセルのシートのデータを別のエクセルに自動で書き込んでくれるような仕組み(マクロ?)の作成方法を教えてください。
具体的には、
A.xls内の
----------------------------------------------------------------
名前 住所 電話番号 登録日
山田太一 東京都豊島区 0309990999 2005/11/01
宮田太一 東京都港南区 0309990999 2005/11/01
・ ・ ・ ・
・ ・ ・ ・
----------------------------------------------------------------
のようなのデータを、横列単位で
----------------------------------------------------------------
名前:山田太一 登録日2005/11/01
住所:東京都豊島区 電話番号:0309990999
----------------------------------------------------------------
のように、項目のみを記載してある、B.xlsファイルに、自動で書き込むしたいのですが、その場合、どのような方法があるのでしょうか?
エクセルに関しては、ずぶの素人なので、どのような方法があるかもわからず、漠然と質問してしまいましたが、
何卒よろしくお願いいたします。
A 回答 (5件)
- 最新から表示
- 回答順に表示
No.5
- 回答日時:
多分別ブックに、印刷用のシートを作りたいとか言うことだと思う。
そのためには、他ブックのセルを参照する方法を知れば済むことではないですか。とりあえず、質問者にはマクロなど早すぎます。
持ってくる他ブックのセルに(社員1.xlsブックのSheet1のA1セルの
データをもってきたい場合の例)
=[_社員1.xls]Sheet1!A1
のように書けば
='C:\Documents and Settings\xxxx\My Documents\[_社員1.xls]Sheet1'!A1
のように補正してくれます。
ーーー
さらにこれが実現しても、エクセルVBAを駆使しないと
1個人1シートのような帳票は自動で印刷できません。
多分そういうことがしたいのでしょうが。
もう少しエクセルを勉強して、VBAを勉強すべきと思います。
No.4
- 回答日時:
もちろんマクロを書く手もありますが、やりたいことは別のブックのデータを参照してデータの並びを変えて表示したいということのように受け取れますので一般的にはINDIRECT関数で十分ではないでしょうか。
A.xlsの1行のデータをB.xlsの2行にまたがって表示したいことは分かりましたが、データが複数ある場合のデータ並びはどのようになりますか?
1行目+2行目が山田さんのデータで、3行目+4行目が宮田さんのデータですか? それが分からないと具体的な式は書けません。
No.3
- 回答日時:
質問とは外れますが・・・・
そのように変更して印刷されたいのでしょうか?
そのようなファイルは非常に扱いにくい物になります。
(新しいファイルにとの事ですから元ファイルは残るとは思いますが・・・)
大変失礼ですがExcelに慣れていらっしゃらない方に限ってそのようなファイルを作られます。
見る時も2段になっていると、どちらかというとわかりにくいです。
用紙設定をA4横置きにするなど工夫して現状の物を印刷されてはいかがでしょうか?
No.2
- 回答日時:
マクロはかけますか?
ワークブックを開くには
Workbooks.Open Filename := "C:\B.xls"
とします。開いてしまえば、後は
Workbooks("B.xls").Sheets(1).Cells(1, 1) = "なんとか"
という具合に、ワークブックに値を書き込むことができます。
フォーマット変換に関しては、ループを組むなどして、実現します。
最後に、保存して閉じます。
Workbooks("B.xls").Save
Workbooks("B.xls").Close
マクロが組めるのであれば、それほど難しいことではないですが、マクロを組めないのであれば、実現は困難ではないかと思います。
No.1
- 回答日時:
VBAを使えば、出来ますね。
コードを書くのは面倒なので割愛しますが、順序としては
1.エクセルBを開く
2.エクセルAを行に合わせてループ(繰り返す)させる
3.セルのデータに"名前:"などをつけてエクセルBの行に貼り付ける。
です。
Workbooks.Open "C:\BookB.xls"
でエクセルを開けます(ファイルが無い場合はエラー)。
for i=0 To 1000(最大件数以上にすればいい)
Application.Workbooks("BookB.xls").Worksheets("sheet1").Cells(i,1).Value="名前:" + Application.Workbooks("BookA.xls").Worksheets("sheet1").Cells(i,1).Value
Next i
みたいな感じでいけると思います。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
プロが教える店舗&オフィスのセキュリティ対策術
中・小規模の店舗やオフィスのセキュリティセキュリティ対策について、プロにどう対策すべきか 何を注意すべきかを教えていただきました!
-
Excel 別ファイルに自動的に反映させたい
Excel(エクセル)
-
エクセルファイルから指定したデータを抜き出して、別のエクセルファイルを作る方法
Excel(エクセル)
-
データ入力すると別ファイルに自動転記するには
Excel(エクセル)
-
4
EXCEL VBAマクロ作成で、他のEXCELからデータを取り込みたい
Windows 10
-
5
VBAで他のブックのシートにボタン一つで書込みたい
Excel(エクセル)
-
6
エクセルでデータ抽出し、別のファイルを作成したいのですがVBAを勉強し
Excel(エクセル)
-
7
エクセルで条件に一致したセルの隣のセルを取得したい
その他(Microsoft Office)
-
8
欲しいデータの行だけ別ブックに抽出したい
Excel(エクセル)
-
9
エクセルに別ファイルのエクセルを貼り付けたい
Excel(エクセル)
-
10
エクセルにて表に入力→一覧に自動転記
Excel(エクセル)
-
11
エクセルで他のファイルを参照しているデータを更新する方法
Excel(エクセル)
-
12
エクセルの中にエクセルを添付する方法
Windows Vista・XP
-
13
エクセル 別のファイルにデータを流し込む方法
その他(Microsoft Office)
-
14
vba 2つの条件が一致したらコピーして別シートに値のみ貼り付け
Visual Basic(VBA)
-
15
エクセルで入力シートから別シートに蓄積方法について
Excel(エクセル)
-
16
EXCELで日付と時刻が入ったセルを日付だけ取り出したい
Excel(エクセル)
-
17
エクセルのセルにカレンダーを表示させ、日付をセルに入力させたい
Excel(エクセル)
-
18
【Excel】 セルの色での判断はできますか?
Excel(エクセル)
-
19
エクセルで開いていないbookのセルの値が欲しい
Excel(エクセル)
-
20
EXCEL VBA セルに既に入力されている文字に文字を追加する
Excel(エクセル)
関連するカテゴリからQ&Aを探す
このQ&Aを見た人がよく見るQ&A
人気Q&Aランキング
-
4
EXcelのマクロで相対パスでファ...
-
5
エクセル;相対パスを絶対パスへ...
-
6
【Excel】マクロの保存先について
-
7
excelで直前に参照していたブッ...
-
8
エクセルデータを別のエクセル...
-
9
エクセルVBAで作成した別ブック...
-
10
エクセルVBA 個人用マクロブッ...
-
11
エクセルで未保存に対するメッ...
-
12
EXCELマクロで、開いてはいるが...
-
13
ファイル名変更後も、マクロを...
-
14
【Excel】特定セルの内容をテキ...
-
15
EXCELのボタンによるマクロの登...
-
16
個人用マクロブックが消えました
-
17
名前の変わるブックをアクティ...
-
18
複数のExcelファイルの印刷設定...
-
19
複数のbookから特定のセル(行...
-
20
EXCELブックが勝手に開いて困っ...
おすすめ情報
公式facebook
公式twitter