• 締切済み

EXCELマクロに関しての質問

マクロ初心者です。 シートAからシートBのデータを取得する際の質問です。 1. 添付ファイルの左側のシート(シート:損益計算)ように シート:損益計算 B1~B18まで1~10まであります。 これはシート名に対応します。(シート名:1~10) シート:損益計算のC4,5,6に書かれているデータが あります。これを(シート:損益計算)C9に入れる値を 添付ファイルの右側から入れる値を(シート:1) から選択して、(シート:損益計算)C9に入れたいです。 具体的には(シート:損益計算)C9に入れるデータは 添付ファイル右側の(シート:1)1205はB2~22 で(シート:1)C2~22の中では9500は(シート:1)のC12に 相当しますので1205の9500のC価格である(シート:1)の 147を(シート:損益計算)C9に入れたいです。 まずどのような関数を使って入れれば良いか教えてください。 2. また、次に(シート:損益計算)のD4,5,6からL4,5,6まで終わらせて (シート:損益計算)のB10の2、つまりシート2から同様のデータを 取得する気でいます。それをB18のシート10まで反復計算させる 事が最終目的です。 大変申し訳ないのですが、1だけでも良いので教えていただけないでしょうか。 以上、よろしくお願いいたします。

みんなの回答

  • jbeam
  • ベストアンサー率41% (85/204)
回答No.1

マクロ初心者との事ですので、「マクロの自動記録と実行」が一番簡単なので方法を記入します。 2010の場合 (1)メニューバーの開発をクリック (2)左の方にあるマクロの記録をクリックします。 (メニューバーの表示クリック・右端のマクロのマクロの記録をクリックでもOK) (3)マクロの記録ダイアログが出力されますのでマクロにデフォルトのMacro1でも好きな名前を付けてもOK ここからは (4)1.で処理したい内容の計算式等を入力します。 終わったら、 (5)メニューバーの開発をクリック (6)左の方にあるマクロの記録終了をクリックします。 (メニューバーの表示クリック・右端のマクロのマクロの記録終了をクリックでもOK) 実行するときは、 (7)メニューバーの開発をクリック (8)左の方にあるマクロの実行をクリックします。 これで (4)で入力した計算式が実行されます。 最初は(4)で入力する計算式は、ごく簡単な計算内容で試してみた方が分かりやすいでしょう。 内容は、マクロの実行時に出てくるダイアログで編集ボタンクリックで確認や編集ができます。 慣れてくれば、ブックを開いた時や、セルの内容が変わった時等のイベントを利用したり、ボタンを埋め込んでマクロを走らせる処理も出来るようになります。 尚、詳しくは、 Excel(エクセル)VBA入門 http://www.eurus.dti.ne.jp/yoneyama/Excel/vba/ 等参考に出来る内容がたくさんありますので、 EXCEL・マクロで検索してみてください

momocha1030
質問者

お礼

ありがとうございました。 実施してみます。

関連するQ&A

  • マクロに関して 画像が見づらいので再度質問

    マクロ初心者です。 シートAからシートBのデータを取得する際の質問です。 1. 添付ファイルの左側のシート(シート:損益計算)ように シート:損益計算 B1~B18まで1~10まであります。 これはシート名に対応します。(シート名:1~10) シート:損益計算のC4,5,6に書かれているデータが あります。これを(シート:損益計算)C9に入れる値を 添付ファイルの右側から入れる値を(シート:1) から選択して、(シート:損益計算)C9に入れたいです。 具体的には(シート:損益計算)C9に入れるデータは 添付ファイル右側の(シート:1)1205はB2~22 で(シート:1)C2~22の中では9500は(シート:1)のC12に 相当しますので1205の9500のC価格である(シート:1)の 147を(シート:損益計算)C9に入れたいです。 まずどのような関数を使って入れれば良いか教えてください。 2. また、次に(シート:損益計算)のD4,5,6からL4,5,6まで終わらせて (シート:損益計算)のB10の2、つまりシート2から同様のデータを 取得する気でいます。それをB18のシート10まで反復計算させる 事が最終目的です。 大変申し訳ないのですが、1だけでも良いので教えていただけないでしょうか。 以上、よろしくお願いいたします。

  • エクセルのマクロについての質問です。

    エクセルのマクロについての質問です。 長文申し訳ございません。 Excelマクロが何度作り直してもうまく作動せず非常に困っております。 (1)ファイルAのシート1のDB列3行目に1の値をいれます。 (2)ファイルAのDC列172行目の値をファイルBのシート名が「1」のシートのD列4行目に入れます。 (3)ファイルAのDC列2733行目の値をファイルBのシート名が「1」のシートのD列6行目に入れます。 (4)ファイルAのDC列3128行目の値をファイルBのシート名が「1」のシートのD列7行目に入れます。 (5)ファイルAのシート1のDB列3行目に1.2の値をいれます。 (6)ファイルAのDC列172行目の値をファイルBのシート名が「1.2」のシートのD列4行目に入れます。 (7)ファイルAのDC列2733行目の値をファイルBのシート名が「1.2」のシートのD列6行目に入れます。 (8)ファイルAのDC列3128行目の値をファイルBのシート名が「1.2」のシートのD列7行目に入れます。 (9)以上のようにファイルAのシート1のDB列3行目に入れる値を0.2ずつ増やしていき、その値に対応したファイルBのシートに上記のように値を入れていくという動作を20まで繰り返す。 以上のようなマクロを作る事は可能でしょうか? マクロについて勉強はしているのですが上手く使いこなせず苦労しております。 長文の質問で大変申し訳ございませんがよろしければ皆さまのお知恵をお貸しください。 宜しくお願い致します。

  • エクセル計算式の複写について

    計算式の複写について シート1   シート2   1 あ    1 あ       A    2 い    2 い    3 う        B            3 う             C シート1に2行使ったデータがあります シート2にシート1から1の「あ」・2の「い」・3・の「う」のデーターを取り出すために計算式を以下のようにしたい 例(C3=sheet1!B3)   (C4=sheet1!B5) ・・・・ と B7 B9 B11 と計算式を入れたい どうすれば複写ができますか?

  • Excelマクロに関しての質問

    Excelマクロに関しての質問です。 ファイルAの”シート1”のF1,F16,F42,F65,F97,F122を別のファイルBの”集計シート”のB2,C2,D2,E2,F2,G2にデータ(数値or文字)を移します。 そしてファイルAの”シート2”のF1,F16,F42,F65,F97,F122をファイルBの”集計シート”のB3,C3,D3,E3,F3,G3にデータを移します。 それをファイルAの”シート29”まで繰り返し行いたいのですが、どのようなマクロを組めば良いのでしょうか? 教えて頂きたいです。

  • エクセルのマクロについて教えてください

    シートが3つあります。Aシートはデータが打ち込んであり、Bシートは計算を行い、Cはその結果を返します。今、Aシートの各データには頭に通し番号がふってあり、Cシートの入力エリアにその番号を打つと、vlookupでAシートのデータの中身を引っ張ってきて、それでBシートにて計算が行われています。で、その結果が再びCシートに返されます。 ところで、その計算結果をAシートの該当データに貼り付けていきたいのですが、いちいちCシートでコピー、Aシートの該当行に形式を選択して貼り付け、とやっているのですが、これをCシートで入力した通し番号とAシートの通し番号を突合して一致したところの○番目のセルに結果を貼り付ける、といったマクロは可能でしょうか。教えてください。

  • エクセル(2013)の繰り返し処理マクロについて

    以下のような処理をマクロで行いたいのですが、どなたかお詳しい方教えて頂けませんでしょうか。 1.[シート(1)]A1を検索値にする 2.[シート(2)]のB3を範囲指定する。 3.一致しない場合→次行を検索 4.一致する場合、C3をコピーし、[シート(2)]のC10に値で貼り付ける。 5.[シート(2)]のB4を範囲指定する。 6.一致しない場合→次行を検索 7.一致する場合、C4をコピーし、[シート(2)]のC11に値で貼り付ける。 以下B列が空白セルになるまで繰り返し お手数ですが、ご教授頂けますようお願い致します。

  • EXCELを教えてください。

    申しわけありませんが、EXCEL初心者です。不等式での計算方法を、教えてください。 セルA1には、A4のデータが入り、B1にはB4、C1にはC4のデータが入ります。 このときA1の値が3<A1<7のときD1にC1+1の値をそうでないときはC1のままの値をD1に入れたいのですが何度しても、できません。親切な方教えてください。

  • エクセル:マクロでこんなことはできますか?

    【シート1】に名簿があります。 1 山田太郎 | ○○市○○町 | 電話 ・・・・ 2 山田花子 | ○△市  |・・・ といった一般的なものです。 【シート2】は、データ入力用としています。 A2~A4の3つを結合し、シート1から”山田太郎”を参照(INDIRECT関数使用) A5~A7の3つを結合し、同様に山田花子を参照 B2,B3.B4、C2,C3,C4は必要データを入力しています。 ★やりたいこと 【シート1】の山田太郎(1行すべて)を削除したときに、 【シート2】の2~4行に入っている山田太郎さんに関するシートを自動的に削除したい。 以上です、よろしくお願いします。

  • エクセルのマクロでこういったことはできますでしょうか。

    顧客管理で下記のようなことがしたいと思っています。 マクロ初心者なのですが、こういったことは可能でしょうか。 (1)事前に、顧客管理のデータ入力用ファイル(以下データファイル)、A、B、C、D、Eという定型ファイルを作成しておく。A~Eには、全て複数のシートが入っており、シート1にデータファイルに入力した情報が飛ぶようにしたい。 (2)データファイルに顧客情報「あ」を入力し、シート上に作成しておいたAという名のマクロボタンを押すと、Aのファイルのシート1に「あ」という情報が飛び、さらに、Aファイルは原本なので、“「あ」A”という名前の新しいファイルを作成できるようにしたい。 (3)同じように、データファイルに顧客情報「い」を入力して、今度はBというボタンを押したら、Bファイルのシート1に「い」という情報が飛び、“「い」B”という名前のファイルが新しく作成できるようにしたい。 非常にわかりにくい説明で申し訳ないのですが、これから自分でマクロやVBEを勉強しようと思っており、実際こういったことが可能なのかどうか、ご教示頂けますと幸甚です。何卒よろしくお願い致します。

  • マクロ(VLOOKUP)に関しての質問です。

    現在、シート名が、A1セル~A5セルの値となっています。(状況によっては増減があります。) VLOOKUP関数の範囲指定をセルの値によってシートを選択するようにしたいと考えています。 シートには、A列とB列にデータがあり、B列の値を元のシートのA2と検索をし、B2に引っ張りたいと思っています。 以下のようなコードを考えているのですが、エラーとなってしまいます。 ActiveCell.FormulaR1C1 = "=VLOOKUP(RC[-1],Sheets(Cells(1, 2).Value)!C[-7]:C[-6],2,0)" Sheets(Cells(1, 2).Value)!C[-7]:C[-6]の部分が間違えていると思うのですが、どのように修正すればよろしいのでしょうか。 申し訳ありませんが、お力をお貸しいただけませんでしょうか、 よろしくお願いいたします。

専門家に質問してみよう