• 締切済み

エクセルのコピー貼り付けマクロ

EXCEL2003を使用しております。 用品の使用記録簿を作っております。 Sheet”入力”で日付や社員名や品目を入力し、(登録)のマクロボタンを押せばSheet”集計”(約100行)に1行目から順次貼りつく表を考えているのですが、うまくできません。 ご存知の方は、教えてくださいお願いいたします。

みんなの回答

  • keithin
  • ベストアンサー率66% (5278/7940)
回答No.3

>エクセルのコピー貼り付けマクロ 例えば添付図のように各シートを作製し,次のマクロをマクロボタンの図形に登録して使います。 sub macro1()  worksheets("入力").range("A2:C" & worksheets("入力").range("A65536").end(xlup).row).copy _  destination:=worksheets("集計").range("A65536").end(xlup).offset(1) end sub #マクロってのは半端なく教えてちゃんです。いったい具体的にあなたがどんなレイアウトのシートを使っているのか(どうしたいのか)先にキッチリ決めて,それに見合う内容で書いてやらないと仕事になりません。 そういう具体的な状況説明無しに,ただ漠然とマクロが欲しいとご相談を投稿されても,あんまり役に立つ回答は得られません。結果して実は実はの後出しの連続になるご相談も多いです。迷惑ですね。

help814
質問者

お礼

ありがとうがざいました。 活用させていただきます。次回からは詳細に伝えられるよう注意します。

  • MackyNo1
  • ベストアンサー率53% (1521/2850)
回答No.2

具体的にマクロコードのどの部分がわからないのでしょうか? もし、新しいマクロの記録を利用するなら、以下のようなキー操作を記録すれば、入力シートのデータを集計シートに順次貼りつけることができます。 新しいマクロの記録を開始し、入力シートのA列の一番上のデータ(項目名を除く一番左上のデータ)を選択して、Ctrl+Shift+*キーを押してデータ範囲を選択し(またはデータ範囲を空白行を含めて大きめに選択し)、Ctrl+Cでコピーし、次いで、集計シートを選択し、A1セル(項目名が入力されているセル)を選択し、Ctrlキーと↓キーを押して、A列の一番下のセルを選択し、ここで「相対参照」のボタン(「記録終了」ボタンの右側のアイコン)をクリックし、↓キーで貼り付け先のセルを選択して、Ctrl+Vで貼り付けます(必要に応じてEscキーでコピーモードを解除)。

  • DreamyCat
  • ベストアンサー率56% (295/524)
回答No.1

プログラムというのは融通が利かないものです。 ひとつの操作の無駄や間違いがないように操作しながら記録しないといけません。 あと、一括コピーならマクロの記録でもできるでしょうが 「順次」だと繰り返しが必要ですからマクロ(VBA)を学ぶ要があります。 ワードやエクセルの基本学習よりも格段に敷居が高くなり、 他人に作ってもらってもその場限りのものになります。

関連するQ&A

  • エクセルマクロについて

    売上記録表で、品目(A列)、販売日時(B列)、数量(C列)、----と並んでいます。A列の品目は、桃・桃・桃・桃・メロン・メロン・柿・柿・柿・ーーーと 、同じ品目について1行~複数行並んで記入されています。この複数行の内、先頭行を残して、他の行を削除するマクロを教えてください。別のワークシートに作成でもよいです。よろしくお願いします。

  • Excelマクロでコピーと貼り付け

    今プログラムを作っていますが、なかなか上手く出来ず困っています。 シートのデータをコピーして別のシートに貼り付ける事は可能でしょうか。 シート内全てのデータという訳ではなく、G列に日付が入っている人のみなど 条件付でマクロを作成のしたいのですが・・・。 具体的に言うと、番号・名前・所属・期間・退職日などが項目になっている表があり 個人別で都度退職日を入力しています。 G列の退職日を入力すると、F列の期間に”退職”と表示されるようにIF関数を使っています。 今回マクロを使いたい部分ですが 退職日が入力されている人のみ別のシートにコピーし貼り付けて まとめておきたいなと思っています。 また、番号・名前・所属・機関・退職日などの項目の表が 所属別にあるので5シート分ぐらいに分かれています。 このような場合は、もしコピー貼り付けがマクロで出来たとして 各シート別にコマンドボタンみたいなものを用意しなければいけないのでしょうか。 それとも、コマンドボタン1回のクリックで全てのシートから 退職日が入力されているデータを参照しコピー貼り付けが出来るのでしょうか。 説明がわかりずらくなってしまい申し訳ありません。 今打ち込んであるプログラムです。 Sub ボタン1_Click() Dim n As Integer For n = 1 To 100 If Worksheets("シート1").Cells(n, 6) = "退職" Then Worksheets("シート1").Range("B3:H100").Copy Destination:=Worksheets("退職者リスト").Range("B4:H100") Else End If Next n End Sub コマンドボタンをクリックすると、コピーは出来ているみたいなのですがシート1全てが退職者リストに貼り付けされてしまいます。 F列が”退職”の人だけ参照させたいのですが・・・。 F列は退職日が入力されると、”勤務継続中”→”退職”と変更になるようIF関数を使っています。 マクロはほとんど初心者ですので、もしよければプログラムをある程度構成して頂けるとすごく助かります。 これを機会に少しずつ勉強していきたいなと思っていますので、簡単な説明もあると尚嬉しいです。 よろしくお願い致します。

  • エクセルのマクロ機能について

    もう一度 助けてください エクセルの集計表である列の移動 並べ替えをエクセルのマクロ機能でつくりました ボタンを押すだけで うまくいっていたのですが データーが増え行を増やそうと 前のマクロを削除して また最初から作ろうとしたところ 記録できません 静的変数が64KBを超えたとかでます 編集 削除しようにも実行とキャンセルしか使えません いろいろほん(VBA)を見ましたが 私のレペルでは100年無理です 簡単なエクセルのマクロにも 範囲があるんですか あるひとつのシートだけマクロを残しています 手作業の集計や決まった作業はたいへんです

  • エクセルのマクロ

    教えてください。   A     B   C 1 部品番号  ○   済印 2 111111   ○   済 3 222222   ○   済 4 333333   ○ という表があるとします。 B列にマクロのボタンを作っておき、 A列に部品番号を入力したら、マクロのボタンを押して、 C列に済、という字を表示したいのです。 1部品入力するごとに、その表示をさせたいです。 2行目、3行目・・・と一つずつマクロを登録して いく方法は、(マクロについては詳しくないので、マクロの記録、マクロの停止、という方法しかわかりません)入力するデータが100件以上あるため、それもどうかな・・と悩んでいます。超初心者なのですが、何とか完成したいと思っています。 よろしくお願い致します。

  • エクセルのマクロについて

    エクセルのマクロについて教えてください。 毎月、データをダウンロードし、VLOOKUP関数などを使って、 必要項目を入れ、ピポットテーブルで合計を出すという 作業をしています。マクロを使ったら、簡単にできるのでは ないかとやってみましたが、マクロで登録しても 毎月集計をするデータの件数が異なるため、 VLOOK関数で入力されるのが、そのマクロで登録したときの ものまでで、残りのセルが空欄になっていたり、 ピポットテーブルの集計は、データの範囲を選びなおしたり しないといけませんでした。 いい方法はないでしょうか。 マクロに作業を記録して、そのシートではなく、 ほかのファイルのシートで 実行する場合は、そのマクロを登録したときのファイル(シート)を 毎回開かなければならないのでしょうか。 基本的なことがわかっていません。 教えてください。

  • エクセル マクロ スケジュールから

    Excel2000使用です。 月間スケジュール表で、一番上の行に1~31が入力されており、直下の行に曜日が入力されています。 マクロを使用して月間スケジュール表から項目を抽出したいのですが、例えばどこかに5日のスケジュールなら5を入力すれば5日のスケジュールのみ抽出するということができますか? 毎日出力する必要がある表なので、現在はその前後の日付を表示しないようにしてから出力しています。 よろしくお願いします。

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

    1)個人票ブック(太郎シート 花子シート 次郎シー・・・・・)の各シートのA1からA5まで、値や公式がはいっています。 2)このシートのA1からA5までの値等を、別の総括表ブック(一枚のシートしかない)にリンク貼り付けをします。 3)まず、太郎シートのA1~A5までは、総括表ブックのB列にリンク貼り付けするマクロボタンを、太郎シートに設置します。 4)さらに、花子シートのA1~A5までは、総括表ブックのC列にリンク貼り付けするマクロボタンを、花子シートに設置します。 5)そして、次郎シートのA1~A5までは、総括表ブックのD列にリンク貼り付けするマクロボタンを、次郎シートに設置します。 6)こうしてマクロボタンを順次貼り付けていきます。 7)各シートの貼り付け場所は列に貼り付けていきますが、上から順番ではなく、任意に飛んでいますが、  各シートの行は、みな一律で同じ行です。 列は違っても皆おなじ行にリンク貼り付けしたいです。 このような操作をマクロ記録でつくりましたが、膨大な作業が必要です。これをなんとかVBAで簡素化したいのですが・・よろしくお願いします。

  • エクセル2000 マクロ

    エクセル2000を使用しています。マクロを使って定型の入力フォームへの入力を素早く、正確に行えるようにしたいと思っています。 「申請書」と「標準事務用品」の2種のシートに分かれており、「申請書」が定型の入力フォーム、「標準事務用品」は入力フォームに反映させたいデータが一覧になっています。 「標準事務用品」のデータの一覧は5つの項目があり、左から1.品物 2.商品名 3.品番 4.メーカー名 5.申請 となっています。 5.申請の列はオプションボタンを1行ごとに1つ設けてあり、オプションボタンがオン(True)の時に、同じ行の1~4の項目のデータを「申請書」シートの入力フォームの任意のセルへコピーしたいです。 何かよいマクロの記述方法はありますでしょうか。

  • エクセルのマクロを知りたい

    エクセルで,たくさんのデータが入力された【シートa】があります。 新しく【シートb】を作成して,そこに空白の表(1)~(10)までを作成します。 (ちなみに表(1)は1行から始まり100行まで,表(2)は101行から始まり200行まで・・・・といった感じです) 【シートb】の表(1)には,【シートa】でA列に「1」が入力されているデータを抽出して,それをB列の昇順に並べて記入しなさい。同様に,表(2)には,【シートa】でA列に「2」が入力されているデータを抽出して,それをB列の昇順に並べて記入しなさい。・・・というのを表(10)まで続けます。 上記のような命令をボタン一つで操作できるようなマクロを教えて欲しいのです。 お願いします。

  • 行コピーして、今日の日付の行に貼り付けるマクロ

    こんにちは、エクセルマクロについて、助けて頂きたく質問させていただきました。 添付しました画像のような表があり、 セルA2に「=TODAY()」が入っていて、セルB2から右は別シートのデータを参照しています。 マクロを実行すると、2行目を行コピーし、セルA3以下の日付からセルA2の日付(今日の日付)を探し出して、行貼り付けしてほしいです。 行コピーや値で貼り付けはマクロの記録を使って、詳しくない私でもなんとか作ることはできるのですが、 今日の日付を探し出して、そこに貼り付ける。というマクロは作れませんでした・・・。 お助け下さい、宜しくお願いします! ※補足します セルA2の今日の日付は便宜上入力しているだけです。無い方がマクロを組みやすいのなら、無くせます。

専門家に質問してみよう