エクセルでセルの値を参照して貼付け

このQ&Aのポイント
  • エクセルで一枚の表があり、各行の先頭列はユニークなIDが入力してあります。データの追加や更新をする際に、IDを参照してデータを貼り付ける方法を教えてください。
  • エクセルでのデータの追加や更新において、ユニークなIDを参照してデータを貼り付ける方法を教えてください。
  • エクセルの表にはユニークなIDが入力されており、データの追加や更新に際してこのIDを参照してデータを貼り付ける方法を教えてください。
回答を見る
  • ベストアンサー

エクセルでセルの値を参照して貼付け

こんにちは。 エクセルで一枚の表があり、 各行の先頭列はユニークなIDが入力してあります。 データを追加する際は、 新たなID(今までのIDの最大値+1)を発行し 表の300行目(実際のデータは100行程度です)に ペーストしてソートする ということをマクロで実行してます。 (マクロは書いたわけではなくなぞって記憶させたものです) データを更新する際、 同じIDの行に貼り付けるわけですが、 これをマクロで実行させるにはどのようにしたら よいのでしょうか? 例; 100 : 123 : 200 というIDがある表で 123というIDを持つデータを 表の123の列に貼り付ける。 わかりづらいようでしたら 補足させていただきますので、 よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • BlueRay
  • ベストアンサー率45% (204/453)
回答No.1

マクロでよければ、以下参考にしてみては如何でしょうか。 1~100行目は表、300行目は貼り付けするデータ '********** ここから ********** '対象行(1~100)を先頭から順番に検索 For i = 1 To 100   '対象行のIDと300行目のIDを比較して、同じ場合は300行目の内容で上書きする。   If Cells(i, 1) = Cells(300, 1) Then     '300行目の内容をクリップボードにコピー     Rows("300:300").Select     Selection.Copy     'クリップボードからの貼り付け     Cells(i, 1).Select     ActiveSheet.Paste     'コピー時の選択解除     Application.CutCopyMode = False     'ループ終了     Exit For   End If Next '********** ここまで **********

oresama
質問者

お礼

うぉぉぉ! 素晴らしい! 完璧です。 ありがとうございました。

関連するQ&A

  • エクセルでセルの値を参照してコピー

    エクセルで一枚の表があり、 各行の先頭列はユニークなIDが入力してあります。 例; 100 ◆ ▲ ● : 123 ■ ▽ ◎ : 200 ◇ ▲ ○ というIDがある表が、 A3からD102まであるとします。 A1セルに 123という数値を入力して、 マクロを登録したボタンを押すと、 123が先頭列のデータをコピー (この場合はA25~D25ですね) して、 A2セルに貼り付けるためには、 どのようなマクロを書けばよろしいでしょうか? 説明が足りなければ補足させていただきますので、 どなたかご教示いただければ幸甚です。 よろしくお願いします。

  • Excel(2000)で行毎にセルをみて、値を返す

    例えば、以下のようなデータがあったとして、各行毎に左から見た結果、最初にデータがあったセルの列の1行のセルの値を各行のG列に返したい。 ______A__B__C__D__E__F__G__ 1行_ア__イ__ウ__エ__オ__カ____ 2行_1__3__5__2__4__1__ア__ 3行_____2__5__1__5__4__イ__ 4行_____________2__8__2__エ__ 5行_____2______2__1__4__イ__ 6行_________5______2______ウ__ G列に結果。 例えば、G3のセルに何らかの関数を入れて、A3~F3を左から見た結果、B3に2というデータがあるので、その列の1行であるB1の値、イをG3に返すといったないようです。 _ は、スペースをとるためのものです。 実際のデータは500行あり、各行の検索する列数は23列あります。 よろしくお願い致します。

  • エクセルの貼り付けについて

    シート1には  A B 1あ い 2う  3え お という表があります シート2には  C 1か 2き  という表があります シート1の2行目はしばらく使わないので 非表示にして Cの列をコピーして貼り付けをしたところ 2行目に「き」と入力されてしまいました このきを3行目に表示させるコピー&ペーストの方法ありませんか? エクセル2016使用

  • シート再計算とセル参照について

    マクロでWEBからデータを落としてきて、列の順序を変えたり不要な行を削除したりしたシートを別のシートから参照したいのですが、マクロを実行するたびに参照してるセルがなかったりするので#REFとなります。なにかいい方法はないでしょうか? 今はマクロのファイルを保存してから、セル参照を行うファイルを開きデータ更新しています。 理想は、マクロを実行した”後に”(データの加工が終了した後)別のシートから、マクロを実行したシートを参照したいです(自動で)。よろしくお願いします。

  • Excel 指定値だけ行コピー+値の移動

    Excel 2010でSheet1に次のような表があります。  A列  B列 C列 D列 E列  りんご 111  222 333 444  みかん 555  666  いちご 777  888 999   ・   ・   ・ これをマクロを使って、次のような形にしたいと思います。 1.C列以降の「数値が入った列数分だけ」行コピーをする。(最大9列まで)  (この例の場合りんごの行は3回、みかんの行は1回、いちごの行は2回) 2.次にC列以降の数値はコピーした行のB列に移動する。 マクロ実行後は次のようになります。  A列  B列  りんご 111  りんご 222  りんご 333  りんご 444  みかん 555  みかん 666  いちご 777  いちご 888  いちご 999   ・   ・   ・ 膨大な数のデータですので、マクロを使って処理したいと思っています。 どうぞよろしくお願いいたします。

  • エクセルのソートのマクロ

    エクセルでのソートのマクロを教えてください。  範囲選択は手動でその都度変更します。優先列、昇順は変更ありません。 例えば、AからE列までデータがあり、第一優先列をD列、第二優先列をA列として、それぞれ昇順でソートします。 範囲はその都度手動で複数行を全列選択します。 つまり、適宜、複数行を選択してからこのマクロを実行すれば常に先の形式でソートできるようにしたいです。  わかりにくい記述で恐縮ですがよろしくお願いします。

  • オートフィルタ後の、マクロでの値の参照に関して

    オートフィルタ後の、マクロでの値の参照に関して 下記を悩んでいます。教えて頂ければ幸いです。 マクロで、あるデーター表から、オートフィルタを使用し、必要なデーターを 抽出し、マクロ内に戻し、その後の計算で使用したいと考えています。 A列、B列、C列にそれぞれ、検索条件を指定し、オートフィルタ後、下記のような状態になります。 参照したい値は、D列になります。 下記のような例では、2.5と2.7の値をマクロ内に戻したいです。 (例:オートフィルタ後) 1行  A▼  B▼  C▼  D 16行 **  **   **  2.5   20行 **  **   **  2.7 *2~15行目は見えなくなっています。 *17~19行目は見えなくなっています。 セルを参照し、マクロ内に戻すには、どのような構文(マクロ)の記述が必要でしょうか? 【備考】 ・上記の例では、セルはD16、D20となりますが、抽出条件によっては、行番号が変わってしまいます。 ・抽出後のD列のデーター数は、常に2つです。 よろしくお願いします。

  • エクセル

    エクセルのマクロ(VBA)を利用して、ソートとフィルタを 順次自動実行出来るような事を行いたいのですが、どなたかお知恵を お貸ください。 添付の画像のような表で、マクロを2つ位で実現できますでしょうか? 表A1~C11において、ソートを実行し、その後2つの列範囲でフィルタを実行し表示させたいのです。 よろしくお願いします。

  • Excelで縦の並び順が違っていたて統一する方法

    以下のように本名を先頭に4項目並んでいるデータが数千件あるのですが 本名 価格 発行年 著者 本名 価格 発行年 著者 ・ ・ このデータの中で先頭が本名で、並び順は変わらないのですが 価格の行が抜けていたり、著者の行が抜けているデータも あります。 これらのデータを4項目に統一したいです。 今考えている方法はマクロでA列を選択して「本名」の 次の行が「価格」になっていなかったら、行を追加して 「価格」行を作る感じです。 多分マクロが手っ取り早いと思いますが、ご教授 お願いします。

  • Excelのコピー&ペーストについて

    エクセルのコピー&ペーストについて教えてください。 フィルタ機能で、ある用語αでフィルタを掛けたとこだけ、コピー&ペーストしたいのですがうまく行きません。(うまく伝わらなそうなので例をあげます) 縦に10行、横に2列の表があったとして、フィルタを掛けて1行目、5行目、7行目がソートされたとします。 このソートされた1行目、5行目、7行目だけにコピー&ペーストしたいものがあるのですが、何回やっても1行目、2行目、3行目に貼り付けられてしまいます。 「形式を選択して貼付」を使うのでしょうか?教えてください。 実際は何千行もあるので力技系の回答はちょっときついです。お願いします。

専門家に質問してみよう