• ベストアンサー

マクロで複数のセルに数値を入力したい

エクセル、マクロとも初心者なのですが、タイトル通りのことをするにはどうしたらよいか教えてください。 やりたいことは、 「指定したアクティブセル(毎回変わる)を選択し、その隣のセルにあらかじめ決められた数値をマクロで入力する」というものです。 例えば・・・ A1をアクティブにし、マクロを実行する B1、C1、D1、E1のセルに決められた数値が入力される こんな感じです。 基本的なことかもしれませんが、どうかよろしくお願いします。

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

  • ベストアンサー
  • izmlz
  • ベストアンサー率55% (67/120)
回答No.1

いろんなやり方があるかと思いますが、例えば↓こんな感じでもできます。 Sub test()  Dim Rng As Range  Dim myArray    Set Rng = ActiveCell  myArray = Array(10, 20, 30, 40) '入力したい数値を指定    Rng.Offset(0, 1).Resize(1, 4).Value = myArray End Sub

参考URL:
http://www2.odn.ne.jp/excel/waza/macro.html
sylphid1
質問者

お礼

試してみたところ、無事に入力されました。 これで作業がだいぶ楽になります。 参考URLもよく読んで勉強してみたいと思います。 本当にありがとうございました。

その他の回答 (1)

回答No.2

入れたい数値を2500,3000,5000,6000だとして、 Sub 数値入力() ActiveCell.Offset(0, 1) = "2500" ActiveCell.Offset(0, 2) = "3000" ActiveCell.Offset(0, 3) = "5000" ActiveCell.Offset(0, 4) = "6000" End Sub 他にも方法はたくさんあると思いますが・・。パっと思いついたのがこれです。

sylphid1
質問者

お礼

こちらも試してみたところ、無事に入力されました。 同じ事をやるのにもいろんな方法があるんですね! がんばって勉強してみたいと思います。 ありがとうございました。

関連するQ&A

  • エクセル 特定セルの表示拡大マクロ

    エクセル2010のマクロについて質問させていただきます。 特定セルが選択された場合のみ表示を140%に拡大し、そのほかを選択した場合は100%に戻すマクロをご教授願います。 具体的な例としては エクセル A1~E4 で表を作成しています。 入力セルは A2,B2,C2,D2,E2,A4,B4,C4,D4,E4 の10カ所に数値を入力します。 上記10カ所を毎回選択するのか面倒なので「名前の管理」で10カ所を選択しています。 エクセルファイルを開くと10カ所を選択するマクロを実行しています。 その10カ所を範囲指定した中で選択セルを「Enter」で送っていき、「D2」もしくは「D4」セルを選択した場合のみ、表示倍率を上げそのほかのセルを選択した場合は表示倍率を戻すマクロをご教授願います。 名前の管理(範囲指定)を実行せずに、単にセルだけを選択した場合のマクロは作成できたのですが、範囲指定した中でのセル選択ではマクロが実行されませんでした。 単にセルだけを選択した場合拡大するマクロを記述しますので、よろしくお願いします。 Private Sub Worksheet_SelectionChange(ByVal Target As Range) If Target.Address() = "$D$2" Or Target.Address() = "$D$4" Then ActiveWindow.Zoom = 140 Else ActiveWindow.Zoom = 100 End If End Sub マクロを学び始めて間もないため、初歩的なミス、見当外れな質問をしてしまうかもしれませんが、何卒よろしくお願いします。

  • マクロでセルを選択

    アクティブセルが例えばC3の時に、マクロの実行でC3からE3までのレンジを選択するといったように、アクティブセルからそこを基準に3つ隣までを選択するにはどうすれば良いですか?

  • マクロが実行されるセル範囲の変更を簡素化したい

    excel 2016を使っています。 例えば、ボタンを押すと指定したセルA1~A10までに入力されている数値を昇順に並べ替えるマクロがあるとします。 この数値が入力されているセルA1~A10の範囲をドラックして、D1~D10の位置に移動すると、マクロが実行される範囲を新たにD1~D10に指定しないとならないのですが、マクロが実行される範囲をA1~A10の範囲に固定して、別の場所に移動してもマクロを修正しなくても良い方法はありますか。

  • セルに入力した数値に自動的に'をつけるマクロを作成した

    お世話になっております。 早速質問です。 エクセルのマクロを作成しています。 いくつかセルに文字や数値を入力し、マクロを実行した時、 自動的にシングルクォーテーションマーク(')を文字や数値の両端に 付けたい(例:aaaaa→'aaaaa')のですが いろいろ探していますが見つかりません。 お力をお貸し頂きませんでしょうか。 よろしくお願い致します。

  • マクロのセルの範囲指定

    お世話になります。マクロ初心者です。エクセルの業務でマクロを作成しようとしているのですが、マクロ実行で、セルの範囲が指定される方法はありますか?例えば シート名  開始  終了  Sheet1   A1  D10 を入力して、ボタンを押したらA1からD10までのセルが選択されることです。説明不足ですみません。宜しくお願いします。

  • エクセル2000:決まったセルに数値が入力されたらマクロを起動させたい

    エクセル2000:決まったセルに数値が入力されたらマクロを起動させたい。 たとえばセルA1に、1以上の数値が入力されたときに、セルA2に今日の日付を入力させる マクロの記述はどうすれば宜しいでしょうか? 以下の記述で、セルA2に日付は入力させられるのですが、 セルA1に1以上の数値が入力された場合に起動させる方法が分かりません。 Range("A2").Select SendKeys "^(;){ENTER}" ご教授の程、宜しくお願い申し上げます。

  • Excel VBA アクティブセルからある一定のセルまでの範囲選択

    Excel VBA アクティブセルからある一定のセルまでの範囲選択 Excel2003を使用しています。 アクティブセルからC列に『計』と入力されている行の1行上のD列までを選択状態にするマクロを作成しようとしています。 C列に『計』と入力されている行は下記のように複数あるので、アクティブセルの行以下に入力されている次のC列の『計』の1行上までとしたいのですが、どのようにコードを書いたらいいでしょうか? 例えば… A2セルをアクティブにしていてマクロを実行するとA2:D3が選択状態に A7セルをアクティブにしていてマクロを実行すると、A7:D9が選択状態になるように という具合です。 わかりづらくて申し訳ありませんが、よろしくお願いします。    A     B     C     D 1  日付    №   品名    金額 2  1/1     1    ○○○   1,000 3  1/2     2    ×××   1,500 4              計      2,500 5 6 7   1/1     5    ○×○   2,000 8   1/3     6    ××○   1,200 9   1/4     7    ×○○   2,500               計      5,700            :            :

  • 入力した数値を複数の一定値で割るには?

    質問です。エクセルで表計算を作っていますが、入力をした数値に、ある複数の一定数値から該当する数値を選び、 割るにはどのようにセルに指示をすればよろしいのでしょうか? <例>数値A÷複数一定値B,C,D,E,F、etc・・・の中から一定値Cを選択して計算。 エクセル初心者ですが、よろしくお願い致します。

  • 数値入力後のセルの変則移動

    office XPを使用してます。 タイトルのとおりマクロにて、セルの変則移動のプログラムについて宜しくお願いします。B5からスタートします。 B5に数値入力→ENTER→B9に入力→ENTER→D6に入力→ENTER→G6に入力→ENTER→D9に入力→ENTER→E9に入力→ENTERで終了です。

  • マクロ実行後、セルへ直接キーボード入力ができない。

    エクセルマクロを実行した後、 マウスを使わずに、 直接いきなりセルへ入力すると、 ツールバーのコマンド選択バー(というのかな?) が出てきてしまいます。 例えば、 「H」と入力すると、ヘルプのバー。 「F」と入力すると、ファイルのバー。 「E」と入力すると・・・ですね。 にゅーっと出てきてしまうのです。 エクセルマクロの実行内容は、 実行すると、他のファイルを開いて、 閉じるということをやっています。 上記のいう「H」が、 セルへ入力できればいいのですが、 何が原因なのかさっぱりわかりません。 「Application.EnableEvents = ・・・」や 「Application.ScreenUpdating = ・・・」 かな? 誰か対処方法がありましたら、 伝授のほうをよろしくおねがいします。 OS:windows95 ソフト:Excel97          です。

専門家に質問してみよう