• ベストアンサー

ExcelのVBA

nishi6の回答

  • nishi6
  • ベストアンサー率67% (869/1280)
回答No.2

実際に1件目から使っていかれるなら   wrtRow = .UsedRange.Rows.Count + 1 の方がいいと思います。SpecialCellsだと何か修正したりすると最終行が記憶されているような気がします。 UsedRange.Rows.Count+1 の場合は、先頭行に各項目の表題があるものとしています。それと、そのシートはデータだけをセットするようにして、余分な入力はしないほうがいいと思います。 >集計などをしたかったので・・。(Accessでも可能でしょうが) 逆のような気もしますね。多量のデータを入力して、Excelでどうやって集計するのだろう・・・と。集計は単純な合計ではなく、種々の条件付で行うことが多いものですがExcelでもできなくは無いですが、Accessの方がはるかに楽でしょう。集計するためのソフトがAccessのような気がします。本もたくさんありますしそんなに困難なことではないと思います。がんばって下さい。

p-leisure
質問者

お礼

レスが遅くなりました。 ありがとうございました。 自分自身、Accessがよくわかってないせいもあって、 とりあえずExcelで・・と思いました。 入力はうまくいったのですが、 フォームで入力した数字は文字列になるようですね。 もう少し研究が必要です。(^_^;)

関連するQ&A

  • VBでのデーターベースレコード検索方法

    VB6.0を使って顧客データーベースを作っているのですが質問させてください。 まず作成した順序として ・ビジュアルデーターマネージャーを使ってレコードを作成しました。 ・顧客コード、フリガナ、名前、住所・・・あと何点かありますが・・ ・データーフォームウィザードで顧客フォームを表示できるようにしました。 ここからが質問ですが、 1.フォームを開いた時点では顧客コードに1番が割り振られるのでそれをまず空欄にしておきたい。 2.例えば23を顧客コードフォームに入力しエンターキーを押せば23の顧客データーを検索し各フォームに表示されるようにしたい。 3.23番の顧客を表示後、削除ボタンをおすとそのレコードが削除されるが、23番を2.のように入力するとレコードがない為自動的に新規入力となり保存すると23番目のレコードに挿入されるようにしたい。 以上の3点です。ど素人的な質問ですがどうかよろしくお願いします

  • ユーザーフォームのデータをそのまま保存する方法

    エクセルでユーザーフォームを作成し、エクセルのワークシート上のボタンからユーザーフォームを表示するようにしました。 ワークシート上のボタンをクリックして表示されたユーザーフォームにデータを入力してユーザーフォームを終了しワークシートを保存終了、再度そのワークシートを開いてボタンからユーザーフォームを表示すると入力したデータが消えてしまいます。 ユーザーフォームに入力したデータがそのまま保存できて次に開いたときにデータが残っている方法はありませんか? 今回、ユーザーフォームを作成をした目的は、ユーザーフォームに入力したデータを元に住所録等を作成するためではありません。ですからユーザーフォームに入力したデータはワークシートと連動させていません。 やりたいことは、ワークシート上に氏名一覧があり、個々の氏名欄にボタンを作成して、その人のデータ一覧をユーザーフォームで表示させるということです。 ユーザーフォームは、人数分を作成する予定です。

  • エクセルVBAの質問です。

    エクセルVBA初心者です。 入力フォームの内容を,別シートに保存したいのですが,いい方法が分かりません(涙) どなたか知恵を貸してください。 実行したいことの要点をまとめると以下のようになります。 ・保存する別シートのレイアウトは入力ホームとは異なる (一行づつのデータにしたい) ・入力フォームは,内容をクリアして繰り返し使用する ・クリアボタン(作成しなくてもクリアできる場合は不要)と追加ボタンを作りたい @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 以下は,できればやりたいこと。 入力シートは一枚で,反映シート(別シート)は何枚かほしい 項目が合致したときにそれぞれのシートに反映したい。 イメージとしては,学校の授業内容を入力シートに入力(項目は,内容・クラス・担任・教科など) それを担任ごとに反映シートに一行にまとめて,データ保存したい。 文章が下手なので伝っているか不安ですが,よろしくお願いします。

  • EXCELのVBAで出来ますか?

    WINXP、EXCEL2002を使用しています。 今、シート「入力」-シート「帳票」-シート「履歴」の3シートがあり、以下の処理を行う為の手続きの記述について、ご教授お願いします。 ●シート「入力」に対し、氏名、住所、電話番号を入力し、実行ボタンを押下する事により、⇒ シート「入力」の内容がシート「帳票」に転記され、(←この部分は、今回の質問範囲ではありません。)シート「帳票」が印刷され、同時に、シート「入力」のレコードをシート「履歴」に書き込み、終了する。 以降、シート「入力」に入力されたレコードが実行ボタン押下により、シート「履歴」に追加される仕組みを作成したい。 宜しくお願いします。

  • エクセルVBAについて

    こんにちは ユーザーフォームに入力した数値をあるシートの条件に合うセルに飛ばしてあげたいのですがやり方がわかりません。教えてください。 (1)ユーザーフォームに支払月、支払金額、お客様番号、現場名、摘要(電気代or水道代orガス代)を入力して登録ボタンを押す。 (2)(1)で入力したデータと”シート1”[現場名(列)、摘要(列)、お客様番号(列)、支払月(行)]を調べて合致するセルに支払金額を飛ばす。 わかりづらい文章で申し訳ありませんが、以上のように動かすプログラムを教えてください。お願いします。

  • エクセルVBA ユーザーフォームのボタン

    ユーザーフォームにCommandButton1があります ワークシートにもCommandButton2があります ユーザーフォーム上のCommandButton1をクリックすることで、ワークシート上のCommandButton2をクリックするという命令は作れるのでしょうか? ワークシート上のCommandButton2をクリックした後の命令は出来ているのですが、そのコードをコピーしてユーザーフォーム上のCommandButton1のコードにコピーするしかないのでしょうか? 実行ボタン(CommandButton2)をワークシートに作成したので、 ユーザーフォームで入力→ ユーザーフォーム上のボタン(CommandButton1)をクリック→ ユーザーフォームは終了→ ワークシート上の実行ボタン(CommandButton2)をクリック してくれると良いかと思いました よろしくお願いします

  • Excel VBA 条件検索について

    ExcelVBAで 「データ検索後リスト表示をして、そのリストから該当するシートを選べば表示される」 というユーザーフォームを作成したいのですが、やり方がよく解りません。どなたか教えて下さい。 具体的には 「コマンドボタンが押された時に、ユーザーフォーム内のテキストボックスに入力された値(名称、日付等)と、複数のシート内のセルの値(名称、日付等)を比較して、一致(全一致、一部一致)した場合、ユーザーフォーム内のリストボックスに表示させる」 というものと 「リストボックスに表示されたものの中から見たいシートを選択すると、そのシートを表示する」 というものです。 リストの表示形式は シート名   名称  日付等 Sheet1    りんご  2013.01.01 Sheet2    りんご  2013.01.02 という具合にしたいと思っています。 ちなみに複数のシートと言いましたが、マスターシートを作りコピーして使用しますので、同一形式のものになります。 以上になります。 色々やってみましたが、うまくいきませんので、どなたか解る方は教えて下さい。 よろしくお願いします。

  • EXCEL VBAでユーザーフォームを使ってデータを入力したい。

    EXCEL VBAでユーザーフォームを使ってデータを入力したいと思っています。(ユーザーフォームはできています。) 入力項目が4項目あります。 名前 作業コード 開始時間 終了時間 上記4項目と登録ボタンです。 sheet1にユーザーフォームを表示し sheet2の A1に名前 B1に作業コード C1に開始時間 D1に終了時間が 登録ボタンを押すごとに どんどんデータを記録していきたいのです。 VBA初心者ですのでコードがよくわかりません。 ご教授ください。よろしくお願いいたします。

  • エクセルのユーザーフォームの作り方で

    エクセルのVBAの初歩的なことで教えてください。小学生の子供用の学習ソフトを試作しています。シート1を問題の表示画面とし、シート2に問題のデータを保存しています。学習者はシート1を見て、最初に名前や使った日をユーザーフォームに入力すると、そのデータがシート1の表示されていない下の方のセルに記録されるようにマクロを組んで作りました。そのユーザーフォームを、シート1に作ったコマンドボタン(テキストは「開始」としました)を押すと表示されるようにしたいのです。そのためのコマンドボタンをどのように作ればよいでしょうか。ユーザーフォームの方は、マクロを実行すれば立ち上がり正常に入力(登録)できます。VBAの本を読んで独学で勉強し始めたばかりですので、できればわかりやすく教えてください。

  • ACCESSのフォームでの入力について

    ACCESS2000を使用しています。初心者のほうです。住所録のテーブルを作って、作業用のフォームを表形式で作りました。そのフォームに宛名印刷するためのコマンドボタンを配置しています。フォーム上で一件入力し、そのコマンドボタンを実行するのですが、その時点ではレコードとして入力されていないようで、実行できません。フォームを一度閉じて、また開くと出来るようになります。1件のレコードをフォームから入力すると同時にテーブルへも保存されていくようにしたいのですが、簡単にやる方法はないでしょうか?