• 締切済み

EXCELのVBAについて

フォームのテキストボックスに文字を書いて、ボタンを押すと、 A1セルにその内容が書き込まれるってのはできるんですが、 続けて、同じテキストボックスから、A2、A3のように続けて 入力する方法がわかりません。 わかる方いらっしゃいましたら教えていただけませんか?

みんなの回答

  • n-jun
  • ベストアンサー率33% (959/2873)
回答No.3

再度フォームを開いた時にA列の最終行以下に続けるのであれば、 Private Sub CommandButton1_Click() Dim r As Range Set r = Range("A" & Rows.Count).End(xlUp) If r.Value <> "" Then Set r = r.Offset(1) r.Value = TextBox1.Text Set r = Nothing End Sub とかでしょうか? ⇒A1に戻るのならスル~して下さい。

全文を見る
すると、全ての回答が全文表示されます。
  • hige_082
  • ベストアンサー率50% (379/747)
回答No.2

一例です Private Sub CommandButton1_Click() Range("A65536").End(xlUp).Offset(1, 0).Value = TextBox1.Value End Sub

anzendai1
質問者

お礼

できました。 ありがとうございます。

全文を見る
すると、全ての回答が全文表示されます。
  • MotoShin
  • ベストアンサー率33% (4/12)
回答No.1

Dim i As Integer Private Sub CommandButton1_Click() Range("A" & i + 1).Value = TextBox1.Text i = i + 1 End Sub 参考になれば幸いです。

anzendai1
質問者

お礼

できました。 ありがとうございます。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • VBE、ユーザーフォームに関して質問があります。VBAを知って1カ月に

    VBE、ユーザーフォームに関して質問があります。VBAを知って1カ月に満たない初心者です。 ユーザーフォームでテキストボックスとコマンドボタンを1つずつ作りました。コマンドボタンを押すとテキストボックスに入れた文字・値がセルB1に入力されるようにしました。続けてテキストボックスに文字・値を入力し、コマンドボタンを押すとB2に入力されるようにしています。 ここからが質問なのですが、 コマンドボタンを押したときにA1に番号を順にふり、さらにセルを罫線で囲みたいのです。図で示すと、  A   B        A   B  _ ___      _ ___  |1|りんご| ⇒ |1|りんご|  - ---      - ---               |2|みかん|                - ---   このような感じです。また、外枠のみを太線にするということが可能であればその方法も教えて下さい。

  • excel vba ユーザーフォーム

    現在、セルa101からa110までに「商品名」、セルb101からb110までに「金額」が 入力済みです。 このデータを、ユーザーフォーム上にコンボボックスを2つ作成し、セルa1へ 商品名を選択後、入力。また、b2へ金額を選択後、入力させたいのです。 また、ユーザーフォーム上にテキストボックスを作成し、ここに入力した 「備考」の全角10文字をc1へ移動したいです。 今のところ、ユーザーフォーム、コンボボックス、テキストボックスを作成した だけで 立ち往生しています。 どなたか、ご教授お願いいたします。

  • Excel VBAについて質問です。

    VBA初心者です。 フォームを2つ作成しております。 1つはフォーム名[入力用] もう1つはフォーム名[要求元]です。 フォーム[要求元]はリストボックス[リスト]と コマンドボタン[入力]と[終了]があります。 リストボックスのデータはRowsourceでセル番地を直接指定してます。 フォーム[要求元]においてリストボックスでデータを選びコマンドボタン[登録]を押すと、 フォーム[入力用]のテキストボックスに代入する方法がわかりません。 どなたか御教授お願い致します。

  • ユーザフォーム(VBA)で入力した内容をシートへコピーするには

    ユーザフォーム(VBA)でテキストボックスとボタンを作成しました。 このテキストボックスに入力した内容をボタンを押すことでシート1のA1セルにコピーしたいのです。こんな簡単な感じなのですが、 プログラムはどのようにしたらよいのでしょうか?教えてください。 それと、このエクセルファイルを開き、マクロを有効にするのボタンを押すと思うのですが、そのときにすでにユーザフォームが表示されているようにしたいのですが・・・どうすればいいのでしょうか? ※できたらでよいのですが、もう一つボタンを作成し『クリア』ボタンということで、テキストボックスに入力した内容だけをクリアさせるボタンも作ろうとおもうのですが、それはどうしたらよいのでしょうか? 困っています。教えてください。

  • エクセルVBAで順番にこんなことは?

    お知恵をお貸しください。 Sheet1上に貼り付けた「テキストボックス」をSheet2のセルA1にリンクさせてあります。 Sheet1上に設置したフォームのボタンをクリックすると、 Sheet2のB1セルの文字列をSheet2のA1に貼り付け(=テキストボックスに表示される。)、 さらにボタンを押すとSheet2のC1の文字列をSheet2のA1に貼り付け、 さらにボタンを押すとSheet2のD1の文字列をSheet2のA1に貼り付け、 さらにボタンを押すとSheet2のA1を空白にする。 こういうことをやりたいのです。 For i = 1 To 3 Sheets("Sheet2").Range("A1").Value = Sheets("Sheet2").Cells(1, i + 1).Value Next では、当然ながら一度のクリックで終ってしまいます。 良い方法をご教示ください。

  • excel vba複数行入力可能なテキストボックスを上段から複数列に表示

    よろしくお願いします。 現在ユーザーフォーム上に3つのテキストボックス (複数行ではありません)があり、それぞれに文字を打ち込んで、コマンドボタンでセルに転記させているのですが、もっと効率のよい方法はないのかと思い探したもののなかったため質問いたします。 (複数行のセルにはありましたが、複数列のセルに転記がなかったため) 複数行入力可能なテキストボックスに入力された文字を上段から1行ずつA10からC10と列に転記したいのです。 こんな感じです テキストボックス |------| |AAA       |  |BBB       | |CCC       | |------| 複数行入力し(空欄の時もあります)コマンドボタンをクリックすると シート1の     A      B     C ・ 10 AAA   BBB   CCC

  • テキストボックスが空白の時、セルに入力"しない"

    ユーザーフォームにて、テキストボックスに入力されている文字や数字をユーザーフォーム内の"入力開始ボタン"を押したら、セル(A1)に入力されるように設定しています。 しかし、別のセル(C1)に A1 × B1 = X   という式が入力されており、テキストボックスが空白の状態で入力開始ボタンを押したら、セル(A1)に文字が打ち込まれたとカウントするのか、正しく計算できなくなります(A1を選択してデリートするとXに正しく0と表示されます)。 そこで、テキストボックスに文字か数字が打ち込まれている時のみセル(A1)に入力されるようにしたいのですが、回答宜しくお願いします。

  • エクセルVBAで郵便番号から住所を

    流れ (1)テキストボックス1に郵便番号7桁を入力 (2)コマンドボタン1(検索)をクリック (3)テキストボックス2に住所表示 上記のような流れで行いたいのです。セルに入力ではなく 入力フォームを作成してボックスやボタンを配置して作成したいのですが できますでしょうか??

  • VBA フォーム作成

    ユーザーフォームを作成しテキストボックス、コマンドボタンを配置して、コマンドボタンに処理の内容を記述して実行することは出来たのですが、テキストボックスに文章を書く際に任意の位置で改行して実行すると改行した部分でセルA1とセルA2に分かれて入力されてしまいます。User Form1のプロパティMultiLineをTrueにしています。 アドバイス頂けますか。

  • EXCEL VBA セルに既に入力されている文字に文字を追加する

    EXCELでマクロを作成しています ユーザーフォームを使用し、コンボボックスでセルを選択し、その選択したセルにテキストボックスから文字を入力できるようになっています。 選択したセルが空白ならそのままテキストボックスの文字を挿入し、 もし選択したセルにすでに文字が入力されている場合は、すでに入力されている文字+テキストボックスの文字、という風にしたいと思っています。 例:選択したセル  「ガソリン代」   テキストボックス「高速代」   → 『ガソリン代高速代』  その次も同じセルを選択した場合     テキストボックス「電車代」   → 『ガソリン代高速代電車代』 このような感じです。 文字をどこかに代入してテキストボックスの文字と&で結んで入れてやれば良いのかもしれませんがつまづいております。 ぜひ助けていただければうれしく思います よろしくお願いします。