• 締切済み

VBAでセルの数値の計算

現在ユーザーフォームのテキストボックスに数値を入力し、コマンドボタンをクリックするとSheet1のセルのA1に数字が入り、その後例えばテキストボックスの数字を変更して再度コマンドボタンをクリックするとA2・A3と続けて数字が入ります。そこで、コマンドボタンをクリックするとSheet2のセルA1にSheet1のA列の数字の合計が表示されるようにするにはどうしたら良いでしょうか??

みんなの回答

  • kigoshi
  • ベストアンサー率46% (120/260)
回答No.3

#2のかたもおっしゃっているようにソースコードが無いと何とも言えないと思います。

  • FEX2053
  • ベストアンサー率37% (7987/21354)
回答No.2

VBAで実現しているなら、ソースコードがないとナンとも言えませんが。 何か変数に取得してるなら、VBAコード内で加算したほうが簡単ですが 単純にCOPY/PASTEしてるだけなら、=SUMを貼り付けるとか、一工夫が 必要になりますので。 VBAとは関係なく、Sheet2!A1に「=SUM(Sheet1!A:A)」と指定したほうが 楽なんじゃないかと思います。

  • kigoshi
  • ベストアンサー率46% (120/260)
回答No.1

VBAとは無関係にSheet2のA1セルに =SUM(Sheet1!A:A) と入れておけばいいのではないでしょうか。 それとも「コマンドボタンをクリックする」ことによって入った数値のみを合計したい、ということでしょうか? であれば、 > そこで、コマンドボタンをクリックするとSheet2のセルA1に.... で云うコマンドボタンは数値入力のためのコマンドボタンと同じボタンでしょうか?

yasu7r
質問者

補足

すみません。説明が少し足りませんでした。 A列にはいろいろなテキストボックスの数字が入り、例えばTextBox1の数字の合計はSheet2のA1に。TextBox2の数字の合計はSheet2のA2に。というようにしたいです。

関連するQ&A

  • セルの値をユーザーフォームのテキストボックスに

    エクセルの質問です。 シート1にボタンを設置してユーザーフォームを呼び出すようにしています。 ユーザーフォームにテキストボックスを用意してて、シート1のセル(A1)に記入された数字を、ボタンを押した時に立ち上がったユーザーフォームのテキストボックスに表示されるようにしたいのですが、どうしたらいいのでしょうか?

  • ご教授願います。

    エクセルのVBA初心者です。 期限が迫っているので、どなたかご指導、ご教授願います。 ここまでの経緯を説明いたします。 ユーザーフォーム1 オプションコマンド1 オプションコマンド2 ↑(楕円の○をつけるため) コンボボックス1 ↑(記録先シートを指定するため) テキスト1 テキスト2 テキスト3 テキスト4 ↑(A列の空白行を検索語A列%行にテキスト1 B列%行にテキスト2・・・) コマンドボタン1 コマンドボタン2 ↑(完了ボタンとキャンセルボタン) このようにユーザーフォーム1を構成致しました。()内は希望プログラムです。 なお、このユーザーフォーム1はシート1上に作成致しました、コマンドボタンAによって呼び出されるようにしています。 またシート1にはオプションボタン1,2と同じ名前が書いてあるセル1,2があります。 このように構成したうえで、行いたいプログラミングは下記のようになります。 コマンドボタンAでユーザーフォーム1を呼び出します。 オプションコマンド1(又は2)にチェックをいれ、テキストボックス1~4まで記入します。 そしてコマンド1でhideを使って一度隠します。 hideでユーザーフォーム1を隠しはしますが、コマンドボタン1を押すと、オプションコマンド1を同じ名前のセルには楕円の○マークがでます。テキスト1~4はコンボボックスで指定したシート先のA行の空白セルにA列%行 B列%行 C列%行 D列%行に各々記入されます。%は空白行です。 また選択したコンボボックスの内容はシート1の指定セルに記入されるようにします。 このようにしたいのですが、どなたかご教授願います。 説明が至らない点、またわがままなお願いではございますが、何卒お願い致します。

  • ExcelVBAでセルをクリックしてユーザーフォームを表示するには

    OfficeExcel2003を使用しています。 ユーザーフォームのテキストボックスやコンボボックスに文字や数値を入力し、OKボタンを押せばエクセルのセルに記入できるようにしようと思ってます。 フォームはなんとか(形だけですが..)作成できたのですが、そのフォームを呼び出す方法として、入力したい行のA列のセルをクリックすればユーザーフォームが表示されるようにしたいのです。 ネット上でいろいろ検索してみましたがなかなか見つけることができませんでした。 初歩的な質問かもわかりませんが、教えて頂けないでしょうか。 宜しくお願い致します。

  • Excel2003での合計計算

    連続した列または行の数字を合計するときExcel2000やそれ以前のバージョンでは合計したい列または行を反転ドラッグし、数字列あるいは行の下あるいは右のセルをクリックすると自動的に合計が出てきたと思いますが、2003バージョンでは違うのですか。ヘルプの 「数値の列の下、または数値の行の右にあるセルをクリックします。 [標準] ツールバー (ツールバー : コマンドを実行するのに使用するボタンやオプションを含むバー。ツールバーを表示するには、[ユーザー設定] ダイアログ ボックス ([ツール] メニューの [ユーザー設定] をクリックして、[ツールバー] タブをクリックします) を使用します。)の (オート SUM) をクリックして、Enter キーを押します。」 の通りにしてもSUM()だけしか出てこず、合計が出ません。なぜでしょうか

  • excelでVBAでユーザーフォームのリストBOX

    下記VBAの作成の仕方を教えていただけないでしょうか。 やりたいこと (1)sheet2のA1セル~A5セルまでの間の間をユーザーフォームのリストボックスに登録する (2)sheet1のA1セルをクリックすると、ユーザーフォームが起動し、任意のリストをクリックすると、 その値がA1セルに格納され。ユーザーフォームが終了する。 ※コマンドボタンは使わずにお願いします。なおexcel2000です。

  • エクセル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 では、当然ながら一度のクリックで終ってしまいます。 良い方法をご教示ください。

  • VBA ”あかさたなはまやらわ”で選択、リスト表示

    よろしくお願いします。 ユーザーフォームのコマンドボタン1をクリックしたときは、 Sheet1のA2~A行の最終セルの中から先頭文字が、 あいうえお(カタカナも含む)を選択してリストボックス1に リストとして表示する。 同じように ユーザーフォームのコマンドボタン2をクリックしたときは、 Sheet1のA2~A行の最終セルの中から先頭文字が、 かきくけこ(カタカナも含む)を選択してリストボックス1に リストとして表示する。 以後同じようにして”わ”まで繰り返す。 【A行の最終行は可変します】

  • VBAのユーザーフォーム・・

    教えてください。 ユーザーフォームのテキストボックス・コンボボックスに入力した文字列をコマンドボタンを押したら、セルC1・B1に反映させたいのですが、できません。 このコマンドボタンには他のプログラムも入っており、同時にプログラムを実行したいのですが。

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

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

  • マクロでセルに枠を付けるには

    現在A列のセルにある"*"をクリックするとユーザーフォームが開くようになっています。そのユーザーフォームの中のチェックボックスをTrueにしてコマンドボタンを押すと"*"のある行のC列にチェックボックスの名前の文字が入るようになっています。更にコマンドボタンをもう一度押すと次の行に文字が入ります。そこでそのコマンドボタンを押したときなどに入力した行分の、B列からM列まで太枠を付けたいのですがどうしたらできるでしょうか?またできたらH列の左に縦の太枠をつけて、行と行の間は細い線の枠を付けたいのですがどうしたらよいでしょうか?

専門家に質問してみよう