アプリ版:「スタンプのみでお礼する」機能のリリースについて

エクセルVBAについて質問させてください。
A1セルにの値をB1、C1の方向にオートフィルを行いたいと考えています。
オートフィルをするセルの個数を変数で指定したい場合、どのように記述すればよろしいでしょうか?
(変数の値が5なら、B1、C1、D1、E1までオートフィルというような感じです。)

A 回答 (5件)

こんばんは!


一例です。

オートフィルしたいセルをアクティブにして(質問文ではA1セルをアクティブにして)↓のマクロを実行してみてください。

Sub test()
Dim i, j, k As Long
k = InputBox("オーフィルする列数を入力") - 1
i = Selection.Row
j = Selection.Column
Selection.AutoFill Destination:=Range(Cells(i, j), Cells(i, j + k))
End Sub

こういうコトですかね?m(_ _)m
    • good
    • 0
この回答へのお礼

ありがとうございました。
やりたいことが実現でき、解決しました。

お礼日時:2011/08/07 20:32

標題の>オートフィルタ、はデータを選択する仕組み、だ。


一方>オートフィルはセルに値を入れるやり方。
多分この質問は後者だろう。十分注意して質問を書いてもらわないと、回答者に迷惑をかけるよ。
ーーー
もしオートフィルで在れば、マクロの記録を採って考えましたか。初心者はそこから考えるべきだ。
Sub Macro4()
Range("A1").Select
Selection.AutoFill Destination:=Range("A1:D1"), Type:=xlFillDefault
Range("A1:D1").Select
End Sub
となる。このD1を指定した者に、変化させるコードを考える。
Sub Macro5()
'Range("A1").Select
x = InputBox("列数=")
r = Selection.Row: c = Selection.Column
Selection.AutoFill Destination:=Range(Cells(r, c), Cells(r, c + x - 1)), Type:=xlFillDefault
End Sub
ーーー
操作
元になるデータを入力しておいて、そのセルを選択
プログラム実行
列数を入力
結果
列数(元になるセルも含めて)列数分オートフィルされる。
    • good
    • 0
この回答へのお礼

ありがとうございます。
次からはマクロの記録をとってから質問したいと思います。

お礼日時:2011/08/07 20:30

No.1です。


よくよく質問を読めばオートフィルと書いてある。。。
オートフィルならNo.2さんが正解ですね。
No.1は忘れて下さい。
    • good
    • 0
この回答へのお礼

紛らわしいことをしてしまってすいません。
実はオートフィルタも必要だったので、参考にさせていただきます。
ありがとうございました。

お礼日時:2011/08/07 20:32

No.2です!



投稿した後に気づいたのですが・・・
「オートフィルタ」をご希望なら前回の投稿は無視してください。

「オートフィル」のコードを投稿していました。m(_ _)m
    • good
    • 0

例えば、以下のようになります。



Sub Macro1()
  Dim i As Long
  i = Cells(1, 1)
  Range(Cells(1, 1), Cells(1, i)).AutoFilter
End Sub

以上
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!