こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

締切り済みの質問

リンク貼り付けをマクロで簡素化したい

1)個人票ブック(太郎シート 花子シート 次郎シー・・・・・)の各シートのA1からA5まで、値や公式がはいっています。

2)このシートのA1からA5までの値等を、別の総括表ブック(一枚のシートしかない)にリンク貼り付けをします。

3)まず、太郎シートのA1~A5までは、総括表ブックのB列にリンク貼り付けするマクロボタンを、太郎シートに設置します。

4)さらに、花子シートのA1~A5までは、総括表ブックのC列にリンク貼り付けするマクロボタンを、花子シートに設置します。

5)そして、次郎シートのA1~A5までは、総括表ブックのD列にリンク貼り付けするマクロボタンを、次郎シートに設置します。

6)こうしてマクロボタンを順次貼り付けていきます。

7)各シートの貼り付け場所は列に貼り付けていきますが、上から順番ではなく、任意に飛んでいますが、
 各シートの行は、みな一律で同じ行です。
列は違っても皆おなじ行にリンク貼り付けしたいです。

このような操作をマクロ記録でつくりましたが、膨大な作業が必要です。これをなんとかVBAで簡素化したいのですが・・よろしくお願いします。

投稿日時 - 2009-01-29 22:04:56

QNo.4672427

すぐに回答ほしいです

このQ&Aは役に立ちましたか?

1人が「このQ&Aが役に立った」と投票しています

回答(1)

ANo.1

そんなに膨大な作業量になるのでしょうか?
これは実際の作業がということなのでしょうか … 対象のファイルが膨大な量があるとか

マクロ自体を一本化したいとかですか
現行のコードをどのように改善したいのかを具体化してみましょう

総括表シートに『リンク貼り付け』なのですからこれが複数回あるというのも考えにくいですし ・・・

投稿日時 - 2009-01-30 00:32:56

補足

1枚のシートにつき次のマクロを書いています。

Sub 日本太郎データ貼付()  ’G列に貼り付け
Application.ScreenUpdating = False
Workbooks("個人別データ").Activate
Range("H3").Select
Selection.Copy
Workbooks("総括表").Activate
Worksheets(1).Select
Range("G6").Select
ActiveSheet.Paste Link:=True
'Worksheets(1).Select '日本太郎
'-----------------------------------------------
Workbooks("個人別データ").Activate
Range("H4").Select
Selection.Copy
Workbooks("総括表").Activate
Worksheets(1).Select
Range("G7").Select
ActiveSheet.Paste Link:=True
'Worksheets(1).Select '日本太郎
'-----------------------------------------------
Range("H5").Select
Selection.Copy
Workbooks("総括表").Activate
Worksheets(1).Select
Range("G8").Select
ActiveSheet.Paste Link:=True
'Worksheets(1).Select '日本太郎
'-----------------------------------------------
Range("H6").Select
Selection.Copy
Workbooks("総括表").Activate
Worksheets(1).Select
Range("G14").Select
ActiveSheet.Paste Link:=True
'Worksheets(1).Select '日本太郎
'-----------------------------------------------
Workbooks("個人別データ").Activate
Range("H7").Select
Selection.Copy
Workbooks("総括表").Activate
Worksheets(1).Select
Range("G19").Select
ActiveSheet.Paste Link:=True
'Worksheets(1).Select '日本太郎
'-----------------------------------------------
Workbooks("個人別データ").Activate
Range("H8").Select
Selection.Copy
Workbooks("総括表").Activate
Worksheets(1).Select
Range("G23").Select
ActiveSheet.Paste Link:=True
'Worksheets(1).Select '日本太郎
'-----------------------------------------------
Range("H9").Select
Selection.Copy
Workbooks("総括表").Activate
Worksheets(1).Select
Range("G26").Select
ActiveSheet.Paste Link:=True
'Worksheets(1).Select '日本太郎
'-----------------------------------------------
Range("H10").Select
Selection.Copy
Workbooks("総括表").Activate
Worksheets(1).Select
Range("G28").Select
ActiveSheet.Paste Link:=True
'Worksheets(1).Select '日本太郎
'-----------------------------------------------
Workbooks("個人別データ").Activate
Range("H11").Select
Selection.Copy
Workbooks("総括表").Activate
Worksheets(1).Select
Range("G42").Select
ActiveSheet.Paste Link:=True
'Worksheets(1).Select '日本太郎
'-----------------------------------------------
Workbooks("個人別データ").Activate
Range("H12").Select
Selection.Copy
Workbooks("総括表").Activate
Worksheets(1).Select
Range("G44").Select
ActiveSheet.Paste Link:=True
'Worksheets(1).Select '日本太郎
'-----------------------------------------------
Application.CutCopyMode = False 'コピーモード解除
MsgBox "転記しました。"
Worksheets(1).Select
End Sub

ブック(個人別データ)に個人別シートが20枚あり、各シートのH3からH12(固定)の値や式を
ブック(総括表)の一枚のシートの各列の行(固定6,7,8,14,19,23,26,28,42,44)に貼り付けます。
列は20名の各人により、割り当てられています。

ブック個人別データのシートは増減が常にあります。

投稿日時 - 2009-01-30 22:31:05

あなたにオススメの質問