• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:オートフィルマクロで作り、パラメータを変数にす方法)

オートフィルマクロで変数を使用してパラメータを指定する方法

このQ&Aのポイント
  • EXCEL2007で、オートフィルマクロを作成し、変数を使ってテキストボックスに入力された値をオートフィルのパラメータに指定する方法について教えてください。
  • 例えば、テキストボックスに「10」と入力された場合、A1からA10までオートフィルするマクロを作成したいです。
  • 初心者ですので、詳しい説明をお願いします。

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

  • ベストアンサー
  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.3

こんばんは! 外していたらごめんなさい。 テキストボックスに仮に10と入れ、マクロを実行するとA1セルをA10セルまでオートフィル、 テキストボックスが20であればA1セルをA20セルまでオートフィル! という解釈で良いのですかね? もしそうであれば一例です。 Dim a As Integer a = TextBox.Value Range("A1").Select Selection.AutoFill Destination:=Range("A1:A" & a) こんなんではどうでしょうか? 的外れならごめんなさいね。m(_ _)m

tokyo2199
質問者

お礼

ありがとうございました。 まさに求めていた記述です。 思ったような結果がえられました。

その他の回答 (3)

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

ん? そういう意味ですか。 では >オートフィル とは,具体的にどういう操作を考えたのですか。 ご質問で掲示されているのは単に「A1を10個コピーする」ですが,それなら private sub commandbutton1_click() worksheets("シート名").range("A1").resize(me.textbox1, 1).filldown end sub といった具合です エクセルの操作としての「オートフィル」なら private sub commandbutton1_click() worksheets("シート名").range("A1").resize(me.textbox1, 1).dataSeries type:=xlautofill end sub といった具合になります。 A1セルにたとえば「A1」などのように記入してあった時の結果が違いますが,具体的にどういう使い方を考えているのかに応じて,適切なマクロを選んで使ってください。

tokyo2199
質問者

お礼

説明不足ですいませんでした。 説明では範囲内に同じ10の値を入力する作業のみえますが、求めていたのは下記でご説明くださった、10、11,12 のようになるプログラムです。 無事できました。ありがとうございました。

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

大げさに、オートフィルといわなくても良いのでは。 A1:A10に同じ値を入れるなら Sub test01() Range("A1:A10") = 10 End Sub この10をTextBox1.Valueで代替して使えば良い。 Range("A1:A10") = TextBox1.Value こんなことのためにテキストボックスを持ち出す必要あるのかな。InputBoxで十分では。 ーー それともれんぞくデータの作成のことか。 操作をしてマクロの記録を採れば仕舞い。 ーー 前記だってA1:A10を範囲指定。数式バー部に10と入れてCTRLを押しながら、ENTERでマクロの記録が採れる。 VBAをやるといってもエクセルのことを知らないとだめ。 初心者なら、まずマクロの記録を活用を考えること。

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

worksheets("シート名").range("A1:A10").value = me.textbox1.value などのように。

関連するQ&A