• 締切済み

エクセルでの値の自動代入

エクセルでワークシートのセルからでもユーザーフォームからでもいいのですが、違うワークシート上の表(列が項目、行が日付)の当日日付のセルにマクロで作ったボタンを押すと値が挿入されるような方法はありますか? アクセスで値の代入のようにできればいいのですが。 マクロでもVBAでもいいのですが、できる方法はあるでしょうか?

みんなの回答

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

#1の補足では Sheet0(Sheet1,Sheet2,Sheet3,以外) (または1つのフォーム) があって 日付 2005/11/3 部署  東京支店 商品1 12 商品2 34 商品3 6 ・・・ (どれくらい商品数はあるのだろう?) を入力して、ボタンを押すと 当該日にち(行)、当該部署(=当該Sheet)、当該商品(列)のセルに 入力した数字が、自動でセットされるというイメージですか。

全文を見る
すると、全ての回答が全文表示されます。
  • banker_U
  • ベストアンサー率21% (17/78)
回答No.3

うーんわかったようなわからないような? 総合集計表と各部署のシートのフォーマット(表形式)はまったく同じなのですか?だったら、総合集計表にのB2セルに  =sum(Sheet2:Sheet10!B2) と入力して、あとは必要なだけ左右にコピー しておけば、各部署のシートに入力すれば、集計表に部署ごとの合計が出るのですが・・・ そういうことじゃだめですか? アクセス出身の方なので、多分あなたのおっしゃりたいことは、 日付: 部署: 商品1: 商品2: 商品3:  : というような入力シート(フォーム)があって、そのシート(フォーム)上のボタンを押すと、「部署」名のシートの「日付」の行に入力され、集計表も更新されるような仕組みを作ると言うようなことだと思います。 別に作ることは難しい話ではないと思いますが、表の仕様がわからないと、マクロを作ることもできませんし、説明の仕方は難しいです。 アクセスでVBAが大体わかるとのことですので、Excel固有の話、例えばセルからのデータの持ってき方や、特定のシートの特定のセルへの入力の仕方がわからないってことでしょうか?その辺がわかりません。

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

こんにちは。 読点がないのでちょっと分りにくかったので、補足して読みました。(すみません) 「 違うワークシート上の表(列が項目、行が日付)の当日日付のセルにマクロで作ったボタンを押すと、、(別のブックに)値が挿入されるような方法はありますか?」 オートメーション・オブジェクトやブックを開けていれるという方法が一般的です。ですが、 >アクセスで値の代入のようにできればいいのですが。 この言葉に沿うとすれば、DAO(Data Access Object)を使ったほうがよいかもしれませんね。ただ、ワークシートの表が、きちんとした、リスト形式になっている必要があるかと思います。 もう少し、様子を見させていただいてから、考えたいと思います。

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

何をしたいのかがよくわかりません。 要するに日付毎のワークシートがあって、そのシート上でボタンを押すと、別に作った集計表の当該日付の行にデータが転記されるようにしたい。ということですか? VBAが多少使えるのならそう難しい話ではないと思いますけど? もう少し何がしたくて何ができないのかを具体的に書いてください。 ああっと今気づいたんですが、ひょっとして別のブック(ファイル)という意味ですか? まあそれでも大差ないと思いますけど。

mittz
質問者

補足

説明不足ですみません。 だいたいご指摘の通りで、 sheet1 総合集計    商品1 商品2 商品3  1/1   1/2 sheet2 部署1    商品1 商品2 商品3  1/1  1/2 sheet3 部署2    商品1 商品2 商品3  1/1  1/2 というsheetにそれぞれ切り替えて値を入力するものを 1つのsheetあるいはuserformでまとめて入力して コマンドボタンを押すと全てのsheetに値が代入されるという感じでやりたいのですが…。 VBAはアクセスではだいたい分かりますが、エクセルは マクロを使う程度なので、詳しくはありません。 よろしくお願いします。

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

関連するQ&A

  • エクセルVBA「コンボボックスの値をワークシートに代入」

    エクセルVBA「コンボボックスの値をワークシートに代入」 連日質問してしまい申し訳ありません。・・・ 今回は「コンボボックス」にリストアップされている値をセルに入力したいのです。 画像を見て頂ければと思いますが、コンボボックス(左ウィンドウ画像)には25の文字列がリストアップされています。 このリストアップされている文字列をすべてワークシートのセルB4からの"4"列に入力したいのです。 なんだか滅茶苦茶ですが、ご理解頂ければご協力お願いします。

  • ExcelでVBAにおけるシートの保護に関して・・・

    ユーザーフォームで入力した値がシートのセルに入力 されるというものを作っています。 そこで、シートの列挿入及び列削除を禁止しておきたい のですが、そのままシートを保護してしまうとユーザー フォームが開かなくなるので、VBAにてユーザーフォーム が開く前に保護を解除し、閉じるときに再び保護をかける ようにしました。 ただ、この方法だと、シート保護の項目全て(初期設定) に対して保護されてしまうため、例えば行挿入や行削除、 あるいはオートフィルタや並べ替えといったことまでが 出来なくなってしまいます。(手動で保護を解除すれば できるのですが、一々解除しなければならないのは面倒 なので何とか避けたいのです。) 禁止したいのは、列削除及び列挿入のみなのですが、 他によい方法はないでしょうか。

  • サブフォームをブランクで開きたい(値の代入)

    現在、サブフォームを開く時に値の代入の後、DMax関数で+1をして最後のレコードに+1したIDをマクロで行っていますが、VBAでできないでしょうか? 1.サブフォームを開く Cmd Open フォーム名 2.値の代入で(””)をいれフォームをクリア 3.値の代入でID=DMax"テーブル”+1 良い知恵があれば教えて頂けないでしょうか マクロにあまり頼りたくないので宜しくお願い致します。

  • ■ エクセルのマクロで出来ますか?

    エクセルマクロの初心者です。 現在、業務で以下の様な表を作成し、請求書の発行を行っています。 「sheet1」A列のNo.を「sheet2」のA列(例えばセルA1)に入力すると VLOOKUP関数で必要項目が請求書の雛形に表示される仕組です。 複数行を抽出する場合は、複数のNo.(例: 1,3,10)を手入力(例: A1,A2,A3・・・)しております。 ----- <sheet1>    A列  B列   C列   D列  ・・・ 1行 No.  項目1  項目2  項目3 ・・・ 2行  1   値1   値2   値3  ・・・ 3行  2   値4   値5   値6  ・・・ 4行  3   値7   値8   値9  ・・・ <sheet2> 請求書の雛形 セルA1~A10に請求書を発行したい<sheet1>A列のNo.を入力。 ----- これを、A列の左に行を挿入、各行にチェックボックスを配置し、 チェックボックスをオンにした行のB列(行挿入前はA列)の値(No.)を 「sheet2」のA列(例えばA1/複数の場合はA1,A2,A3・・・10行程度)に コピーを行う仕組を作ることを検討しています。 複数のNo.をチェック(1,3,10)した場合は、 「sheet2」のA1,A2,A3の様に、上から順になれば理想的です。 説明が悪く、意図が伝わり難いこととは思いますが、 これらの作業を行うマクロ(他の方法も可)を組むことは可能でしょうか。 ご教授いただければ幸いです。 よろしくお願いいたします。

  • マクロの自動実行などについて

    エクセル2003のVBAマクロについて質問です あるワークシートに値が入力されたら、マクロを自動実行するように出来ないでしょうか? 又、そのセルの値を別のセルにコピーしたいのですが、データを入力する度にセルの場所が ひとつ下へずれます。この最終列のセルの値を必ず拾うようにするにはどうすればよいでしょうか? ややこしくてすいません

  • EXCELのワークシート名とセルの値の取得に付いて

    EXCEL2000を使用しておりますが、ワークシート名と、そのシート内の複数のセルの値を取得し、別シートにマトリックス表示出来るように 入力フォームを設計したいのですが、固定の名称を予め組み込むのではなくフォーム上で入力したテキストをワークシート名及び、セルの位置として扱えるようにするのには、どのようなマクロを書けばよいでしょうか?例えばシート名A~Fの各シートのA1~F1のセルに10~15の数値が 入っていて、Gのシートでマクロを動かすと、シート名とセルの位置を 入力するフォームが現れ、それぞれ入力すると、指定されたシート名と セルの中の値が、Gシートに、1行ずつ追加されて行く処理をイメージ しています。何卒、宜しくご指導の程、お願いいたします。

  • エクセルでこんなことはできますか?

    エクセルで、 A列には日付が入っていて、B列には数値が入っています。 「A列の日付の月が5月のところのB列の値を合計する」 という式を作ることは可能でしょうか? ワークシートのセルに式を入力して実現できるでしょうか? それともマクロでないとできないでしょうか?? 自分で考えてみたのですが、ギブアップです。。。 日付が入力されているセルの月の値を抽出というか 検索する方法がわかりません・・・ どなたかご教授いただけないでしょうか?

  • 完全一致したら代入するマクロを教えてください

    エクセルのSheet1のa列にある文字列と、Sheet2にあるa列にある文字列と完全一致したら、前者のセルの右隣に後者のセルの右隣の文字列を代入するマクロをお教えください。単純にvlookup関数を使えばいいのですが、VBAで行いたいのです。よろしくお願い申し上げます。

  • Excelのセルのコピー マクロ

    一つのBookに複数のワークシートが入っています。 それぞれのワークシートのセルのA1からそれぞれのワークシートの A列に値が入っています。 (ワークシートの最終行はそれぞれ違います。) それぞれのワークシートのA1の値を、ワークシート毎に最終行まで コピーしたいのですがどのようなマクロを組めばよいでしょうか? A1の値は、ワークシート毎に異なっています。

  • セルの結合後、値を代入したいです

    下のような表を作成しています 1行目  2行目・・・日付(yyyy/mm/dd)表示はdd 月ごとに1行目のセルを結合して、〇月と自動で入るようにしたいのですが、VBAで作成できますでしょうか。 2行目の日付は、1日から31日まであるわけではなく、月によって日付の数が違います。 選択した範囲のセルを結合して、下の行の日付から、月を参照して結合したセルにその月を代入することは可能でしょうか。

このQ&Aのポイント
  • 電源を入れ直すことでメッセージが頻繁に表示される問題を解消できます。
  • お使いの環境はMacOSで、接続は無線LANです。
  • 関連するソフト・アプリや電話回線の種類については不明です。
回答を見る

専門家に質問してみよう