• ベストアンサー

マクロで値を貼り付けたい

Z列には数式が入っていて、マクロの実行ボタンをクリックするとその数式で出てきた答えをAA列に値で貼り付けるようにさせたいのですが、どのようにしたら良いのでしょうか? マクロの実行ボタンがそのシートを開くと常にシート上に表示されている状態にもしたいです。 マクロをわかっていないので、初心者でもわかりやすく教えていただけると嬉しいです。 よろしくお願い致します。

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

  • ベストアンサー
  • hallo-2007
  • ベストアンサー率41% (888/2115)
回答No.1

「表示」「ツールバー」「フォーム」をクリック ボタンを選択して、シート上に作成 マクロの記録の開始 Z列を選択 コピィ A列を選択、「編集」「形式を選択して・・・」値にチェック入れてOK マクロの記録の終了 上記の作業でご希望のマクロが自動で作成されると思います。

mck1224
質問者

お礼

すぐのご回答ありがとうございます。 とても簡単にわかりました。 ありがとうございました。

その他の回答 (3)

  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.4

>するとその数式で出てきた答えを Z1セルとして、Z1セルの値が、数式で出ようが、手入力されたもので合おうが、リンク張り付けであろうが、入力規則でセットされたものであろうが、以前のVBAのステップでセットされたものであっても、値になってしまえば、値に代わりが無いという、エクセルの基本原則を判ってないよ。 だからCells(1,"AA")=Range("Z1")で良い。 ーーー >マクロの実行ボタンがそのシートを開くと常にシート上に表示されている状態にもしたいです コマンドボタンはシートSheet1に貼り付けたらシート専属のものだ。Sheet2で表示されることは無い。 Sheet1を開く(Activateする)と出てきます。 ーーー >AA列に値で貼り付けるようにさせたいのですが なぜマクロを判ってないのに関数でやらないのか。 AA1セルに=Z1 で良いのでは。 >でもわかりやすく教えていただけると嬉しいです というより質問者が勉強すべきです。

mck1224
質問者

お礼

>AA1セルに=Z1 >で良いのでは。 上記だと値での貼り付けではなく、Z1を呼び込ませるという式になってしまうので、使用できなかったのです。 他の方に教えていただいた方法で出来ました。 きちんと勉強いたします。 ありがとうございました。

  • fujillin
  • ベストアンサー率61% (1594/2576)
回答No.3

すでに回答が出ていますので、別のことを・・・ マクロを使うために、自分でも調べられるようになりましょう。 最初は#1の方の回答のように、マクロの自動記録を利用してマクロを作ってみて、それを自分のやりたいことへと編集してゆくのが良いかと思います。 BVAのヘルプ機能を使えば、いろいろと出ていますので、面倒でも、最初のうちは一行ずつ内容を確認して覚えてゆけば、およそのことがわかるようになります。 マクロをボタンに登録する方法は、エクセルのヘルプで『マクロを登録して実行する』で検索すれば見つかるはずです。 ショートカットで実行する方法、イメージ(図など)に登録する方法、ツールバーに登録する方法なども出ていますので、試してみてください。

mck1224
質問者

お礼

今後をマクロを覚えていく上で参考にさせていただきます。 色々自分で調べられるようにがんばります。 ありがとうございました。

  • sytkn
  • ベストアンサー率43% (54/125)
回答No.2

>Z列には数式が入っていて、マクロの実行ボタンをクリックするとその数式で出てきた答え ということは 例えばZ1のセルに A1+B2+C3 などと入っていると言う事ですよね?入っている数式がどのようなものか分かりませんが、数式であれば、頭に「=」をつければ結果が出せますから。 オートシェイプの図形(テキストボックス)でボタンを作って、分かりやすいようにマクロ実行などと入れて置くといいですね。 図形を右クリックにて選択→マクロの登録で作ったマクロの登録できますよ。 どのようなマクロにするかはその数式が分からないのでどのように計算させたらいいか分かりません。補足お願いします。

mck1224
質問者

お礼

私の書き方がわかりにくくて申し訳ありません。 =付きの数式が入っているので、数式が導きだした答えはZ列に表示されております。 その出てきている数値を値でコピーするようにしたかったのです。 ご回答ありがとうございました。

関連するQ&A

  • 値によって違うマクロの実行

    表題の質問をさせていただきます。よろしくお願いいたします。 A1セルには、別シートで計算された値が転記されるようになっており、1から45までのいずれかの数値が入っています。 その数値によって異なる動きをするマクロが3個あります。  1から15の時はマクロA  16から30の時はマクロB  31から45の時はマクロC おのおののマクロはフォームのボタンから実行できるように登録してあります。 現在はA1セルの数値を見て該当するボタンを押してマクロを実行しています。 たとえばA1の値が「25」の時はマクロCが登録してあるボタンCを押しています。 そこで質問させていただきたいのは 既存のボタンを撤廃し 新たに設置するひとつのボタンで3個のマクロを制御したいと思ったのです。 新たなマクロでA1の値を取得し、そのマクロ内で既存のマクロへ割り振るためには どのような記述をすればよいのでしょうか。 よろしくお願いいたします。

  • エクセル マクロ

    エクセル マクロで、シート1のA1セルないの文字列(数式)をクリックボードにコピーするマクロを組みたいのですが、セルのコピーは出来るのですが、文字列のみコピーが出来ません。貼り付けは任意でするので必要ないです。 初心者で何もわかりません。よろしくお願いします。

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

    エクセルのマクロ登録についてご質問です。 エクセルでマクロを登録したいのですが、 D7~D49まで自動で数式が反映するようにしてあります。 マクロのボタンを作成し、そのボタンを押すとコピーを選択した状態になるようにしてあります。 これが、すぐよこのE列~AH列まで日付が並んでおり、D7~D49に反映させたデータを 対応する日付の下に毎日値貼り付けをしている常態です。     D      E     F     G   自動反映   9/1   9/2   9/3 7   ~ 49 ボタンひとつでコピーした状態ではなく、その対応した日付の下に値貼り付けすることはできますでしょうか。 これがシート1、シート2、シート3、シート4まで あるのですが、ボタンひとつで登録するようにできますでしょうか。 どなたかご回答よろしくお願い致します。

  • セルの値によって実行するマクロを選択する

    マクロ1~3をすで作成してあります。 そこで 例えばsheet1のA1の値が 1~7の時---マクロ1を実行 8~14の時--マクロ1とマクロ2を実行 15~21の時---マクロ1、マクロ2およびマクロ3を実行 それ以外の値の時--メッセージ”やり直し”を表示 のようなマクロを作りたいのですが よろしくおねがいします

  • エクセル2013 マクロの最大値

    エクセル初心者です。セルをダブルクリックしたときに、最大値に+1の値をセルに自動入力したいのですが・・・。まず、シート1のC列とシート2のC列から最大値を探し、その値+1の数字を入力したいです。現在の時点で3、4、5の列にデータが入力されているのでC6をダブルクリックしたときに、マクロ実行されるようにしたいです。データは、増えていくのでC6は固定ではありません。C列の未入力のセルをダブルクリックしたときに、自動入力されるということです。 おわかりの方がいらしたら、ご教示お願いいたします。

  • 非表示シートのマクロ実行

    マクロ処理をさせたいAシートを非表示にしてBシートにマクロボタンを置いて実行させたいのですが 非表示にすると実行できません。 Aシートは 計算処理を行い Bシートには 値だけを出したいので BシートからAシートのマクロ処理を実行したいと思っています。 非表示にしても別シートから実行出来る方法を教えてください。

  • エクセルマクロ イコール関数を使いたい

    シート1のA1の値をそのままシート2のA1に表示させるマクロを作りたいのです。 ボタンを配置して、ボタンをクリックすると シート1 A1 「2018/06/20」の値をそのまま シート2 A1 に「2018/06/20」を表示させる そのようにしたいのです。 宜しくお願いします。

  • セルの値が変ると自動でマクロが実行される。

    セルの値が変ると自動でマクロが実行されるVBAを教えて下さいm(_ _ )m 例えば、シート1のA1の値が変ると、マクロAが実行される。 シート1のA2の値が変ると、マクロBが実行される。 と一つのシート内に複数のイベントを設置したのですが、イマイチわかりません。 知恵をお貸し下さい。

  • エクセル2010 マクロを実行するボタンの作成

    エクセル2010で、 マクロを実行するボタンの作成方法か、初心者向けのサイトを教えてください。 やりたいことは、 シート1に入力した値が、シート2・3・4・・・の表に反映されて表示される。 (各シートの正しい位置に数値を反映させることは終了しました。) シート1に「シート2印刷」 「シート2印刷」・・・などのよなボタンを作り、ボタンを押すだけで、 シートの印刷を実行させたい。 です、宜しくお願い致します。

  • EXCEL2010 マクロにつきまして

    excel vbaでマクロが作りたいのですが、まったくの初心者で 試行錯誤していますが、なかなか出来ずに困っています。 どなたか、教えていただけませんでしょうか。 ○sheet1 --日付---|A-B-C -------------------- 2013/1/20|1 2 3 2013/1/21|4 5 6 2013/1/22|7 8 9 2013/1/23|5 4 3 2013/1/24|4 5 6 2013/1/25|4 4 4 2013/1/26   ・   ・   ・ ○sheet2 実行ボタンを作成 日付を入力して実行ボタンをクリックすると指定した日付のデータが抽出される 例 2013/1/22 → 実行 A B C ------- 7 8 9 このようなマクロを組みたいのです。 わかりづらくて申し訳ありません。 また、初心者向けのおすすめの参考書や、ホームページがありましたら 教えて頂けると助かります。

専門家に質問してみよう