• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:シートに入力した内容をマクロ?でリスト化できますか?)

シートに入力した内容をマクロ?でリスト化できますか?

このQ&Aのポイント
  • 以前行った質問で、シート2のリストに入力=シート1のフォームに反映(→印刷)というものがありました。しかし、今度は逆に、シート1のフォームを入力=シート2のリストに反映→シート1で『確定』ボタン?を押す=シート2が確定され→シート1で新たな入力→以下繰り返しという事をしたいという依頼が来ました。
  • サイトで色々調べた結果、マクロで書式の消去を使うことで解決できるかもしれないと思っていますが、具体的な方法がわかりません。初心者な質問ですが、どのようにすればいいか教えてください。
  • 関連するサイトとして、「http://www.sigoto.co.jp/excel/」があります。

質問者が選んだベストアンサー

  • ベストアンサー
  • hallo-2007
  • ベストアンサー率41% (888/2115)
回答No.3

No1,No2です。 >A1には、=MATCH(A1,Sheet2!A:A) 先ほどの、関数間違っていましたので、訂正の上確認下さい。 A2にいれた値をデータで探して、行番号を表示するので A1には、=MATCH(A2,Sheet2!A:A) が正しいです。

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

その他の回答 (2)

  • hallo-2007
  • ベストアンサー率41% (888/2115)
回答No.2

データの状況がわかりませんが、 データシートのA列に、重複していない管理番号などあったとして、 A2に、表示したいデータの管理番号を入力(Vlookup関数で使用した検索値など) A1には、=MATCH(A1,Sheet2!A:A) と入れると、A2に入れた管理番号の行番号が表示されると思います。 A1の値を利用して Sub ボタン1_Click() GYOU = Range("A1").Value Range("C1").Value=Sheets("Sheet2").Cells(GYOU, 2).Value Range("C2").Value=Sheets("Sheet2").Cells(GYOU, 3).Value Range("C3").Value=Sheets("Sheet2").Cells(GYOU, 4).Value End Sub と、先に紹介したマクロの式の=の左右を入れ替えて見てください。 式の内容を理解すると、やりたいことが自由に出来るようになります。

全文を見る
すると、全ての回答が全文表示されます。
  • hallo-2007
  • ベストアンサー率41% (888/2115)
回答No.1

やりたいことが、Sheet1のC1,C2,C3に入力した内容を、ボタンを押すと Sheet2のデータの最後の行の下に、或いは指定した行に、横方向に記録していくということですかね。VBAで仕事を行うに定番のようなマクロです。 以下、試して、そちらの都合に合わせて編集してください。 Sub ボタン3_Click() GYOU = Sheets("Sheet2").Range("B65536").End(xlUp).Offset(1, 0).Row Sheets("Sheet2").Cells(GYOU, 2).Value = Range("C1").Value Sheets("Sheet2").Cells(GYOU, 3).Value = Range("C2").Value Sheets("Sheet2").Cells(GYOU, 4).Value = Range("C3").Value End Sub 補足説明 Range("B65536").End(xlUp).Offset(1, 0).Row  は エクセルで使用できる最大行65536行目のB列を上方向へ移動して、空白でない行を探す、その行から1行上へ移動した行番号を取得して、変数GYOUに入れる。 もし、既に、登録してあるデータ行を変更して、書き換えるのであれば、編集しているデータの行番号をSheet1に表示しておいて(仮にA1の場合) 上記マクロのGYOUに GYOU=Range("A1").Value と買えて、別途ボタンも作っておけば、新規登録と編集内容更新のボタンが出来ます。 追記 ご質問にシートに入力とVlookup関数で表示と有りますね。 Vlookup関数で表示させたセルに入力すると、Vlookup関数も消えてしまいます。こちらの機能もVBAに置き換えた方が良いかと思います。

momo_0729
質問者

お礼

丁寧な説明をありがとうございます!試してみます。 >Vlookup関数で表示させたセルに入力すると、Vlookup関数も消えてしまいます。 >こちらの機能もVBAに置き換えた方が良いかと思います。 とありますが、もしよろしければ具体的な方法を教えて下さい(><) そこまでは・・・というのであれば、ネットでどのように調べれば出てくるか ヒントを下さると大変助かります。 何度も申し訳ありませんが、よろしくお願いいたします。

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

関連するQ&A

  • EXCEL:入力規則の「リスト」は別シートを参照できない

    表の中の項目をVLOOKUP関数を使って入力したいのですが、 検索値(文字列)の入力者が多数いるので 「入力規則」の「リスト」を使って入力するようにしました。 VLOOKUP関数は別シートの範囲も指定出来ますが リストは同じシート内に元の値を設定しなければならないので、 同じようなシートが多数ある場合、全てのシートに同じデータ(元の値)を入力しなければならず大変です。 何か良い方法はないでしょうか。 上司はマクロを使ったら?と言いますが どんなマクロを使ったら出来そうなのか見当が付きません。 どなたかアドバイスよろしくお願い致します。

  • エクセルで関数などを使ってリスト化するとき

    現在エクセル(2003)で、反映用と蓄積用の企業リストを 作成しようと思っています。 イメージとしてはこのような感じです。 ―――――――――――――――――――――― ■シート1     [001]を反映 1| ●●株式会社 2| TEL:000- 3| 職種:A サービス業 ―――――――――――――――――――――― ■シート2 A  B         C    D ―――――――――――――――――― ID 会社名      TEL  職種                  A→サービス業                  B→販売                  C→製造 001 ●●株式会社 000- A (vlookup?)サービス業 002 ▼▼株式会社 111- B (vlookup?)販売 ……… ―――――――――――――――――――――― 特に「職種」のところで困っています。 悩んでいるのが、関数のvlookup程度のレベルしか技術がない今の私には、 まずシート2の中で、「A」と打ったら横のセルにAに対する値「サービス業」を反映。 シート1で[001]と打ち込んだ際には、シート2で反映された「サービス業」部分を、 シート1の3に反映させるしかないのかな?という感じです。 もっと簡単な方法はあるのでしょうか? vlookupを2回使うのも使い勝手としてどうなのかなって・・・・・ 最終的な目的としては、 シート2を社内用顧客リストとして蓄積させていく。 シート1はプリントアウトやPDFなどでお客さんに提出したりファイリングする用。 ※職種を、「A」だけ反映させるor「サービス業」だけ反映させるかについては未定です。  シート2でのvlookupなどはまだ着手していません。 何か良いアイディアがあれば教えてください。。。! P.S. ちなみに、マクロとかVBA?とか使えたらこのようなリスト作成はもっと簡単になるのでしょうか? 初心者向けのサイトがあれば併せて教えて頂けると助かります。

  • Excel2003 シートに入力されているマクロ

    以前勤めていた方が作成したExcelのファイル内にマクロが使われています。 編集したいのですが、作成者には連絡がとれず大変困っています。 どういうものかというと ブック「あああ」内のsheet「コントロール」にマクロが登録されたフォームが並んでいる。 ボタンを押すと同じブック内のsheet「Macro」に入力されているプログラムが実行される。 自分で作成するときは自動マクロでマクロを作成してから、 標準モジュールを編集して使用している程度の知識しかないので シートを使ったマクロがよくわかりません。 フォームのVBエディタを開いてみても入力はされていません。 命令文はセルに直接入力されています。 調べようにも何を調べればいいのかよくわからず、 せめてそれだけでもわかればと思い質問させて頂きました。 命令文はたくさん入力されており、どこをどう使っているのかもよくわからないので役に立たないかも知れませんが 参考までに載せておきます。 PrintMacro Print_I =ECHO(FALSE) =MoveHajime4() =PRINT(1,,,1,FALSE,FALSE,1) PrintThis =PRINT(1,,,1,FALSE,FALSE,1) =RETURN() Printあいう =MoveDemandForm() =SELECT("Print_あいう") =SET.PRINT.AREA() =PrintThis() =BackToCP() =RETURN() -------------------------- WorkBookAvtivate Macro BackToCP =ECHO(FALSE) =WORKBOOK.SELECT("[あああ.xls]コントロールシート","[あああ.xls]コントロールシート") =ECHO(TRUE) =RETURN() MoveHajime4 =ECHO(FALSE) =WORKBOOK.SELECT("[あああ.xls]HAJIME4.XLS","[あああ.xls]HAJIME4.XLS") =SELECT("R3C1") =ECHO(TRUE) =RETURN()

  • 1つのシートで2つ目のマクロ

    お世話になります。 今、あるシートに1つのマクロを登録してあります。 リストで選択した番号に従って指定したセルにカーソルを飛ばすというマクロです。 で、それとは別のセルに同じシートで郵便番号を入力したら隣のセルに住所を反映させるマクロを登録したいのですが ここで入手したコードをコピペして範囲を修正したのですが どうやら下記の文章が2つあるのがいけない(?)のでしょうか? 「コンパイルエラー名前が適切ではありません」と出てきます。 Private Sub Worksheet_Change(ByVal Target As Range) このコマンド(?)は1つのシートに2つ存在してはいけないものなのでしょうか? あと 出来れば L列に入力した郵便番号を参照してM列に都道府県名、N列に市町村名以降を反映させたいので その方法もご教示いただければ幸いです。 どちらかだけでも結構です。 ・エラーの原因、 ・住所を反映させるマクロ ご教示いただける方、宜しくお願い致します。

  • エクセル:入力内容を別シートに反映し、リスト作成

    お世話になります。 エクセルの関数についてご指導ください。 現在、「購入申請書」内に予実管理できるように関数を貼り付けようと作業しています。 イメージとしては、消耗品を買おうとしたときに、購入申請書に申請金額やコードを入力すると、別シートにある1年間の部署予算と、当月の残額が反映されるようにしたいです。 お聞きしたいのは2点あります。 (1)購入申請書は都度上書きしていくタイプです。過去のものは消えてしまうので、記入した際に別シートにあるリストに反映されていくようにしたいです。リストで自動的に次の行に記入が行われるような入力って可能ですか? (2)年間予算は「部署コード」毎にシートが分かれています。「部署コード」で該当コードが入力された場合、同じ名前のシートに行き、予算を拾ってくるようなイメージを作っているのですが、これは可能でしょうか? 全てイメージで質問してしまい申し訳ありませんが、どなたかわかる方いれば教えてください。 補足は何度でもいたしますので、ヒントをいただけますようお願いいたします。

  • 入力したデータをその都度別のシートに蓄積したい。

    お世話になります。 分不相応なのですが、教えてください。 売上や支払に関する明細を作るためにエクセルを使っています。 『シート1』 罫線を引いて実際の明細仕立てにして、  社名   品名1・数量1・金額1・・・   品名2・数量2・金額2・・・          合計金額 計算式も入れて、品番と数量が入ると 金額を算出するようにしています。 『シート2』 1行目には、社名・品名などの項目名を入れました。 1つの取引先に付き、1行分で シート1で入力したデータを転記したいと思います。 理想としては、シート1で1明細の入力が完了 →コマンドボタン(登録)を押す →シート2の2行目にデータが転記 これを繰り返してシート2の3行目、4行目と データを蓄積していく・・・感じです。 マクロの記録で、入力した内容を消去するボタンを作ったり 1行目だけ内容を転記させてみたり(そこで終了・・) 色々なキーワードで、それらしきサイトを検索してみたり、 初心者でも分かるマクロ&VBAみたいな本で調べてみたり・・ ちょっと行き詰ってきたので質問させて頂きました。 ユーザーフォームを作ってシートに転記する方法は見つけましたが シート1には計算式を結構盛り込んでしまったので、 フォームには手が届きそうにありません。 説明不足かもしれませんが、何か良いアイデアはないでしょうか。 マクロで解決できるのか、やっぱりVBAでやるしかないのか、 また何か良いサイトをご存知でしたらご紹介ください。 よろしくお願い致します。

  • Excel 別シートの結果を書式も一緒に表示したい

    Excel2003で質問です。 Sheet1のセルで入力した文字列を、書式ごと Sheet2のセルに表示したいのですが、 =Sheet1!セル番号 で入力しても書式まで反映されず、 文字のみのコピーになってしまいます。 書式も一緒に反映する方法はありますか? 教えてください。

  • テキストボックスへにセル値の入力

    エクセルマクロの初心者で恐縮なのですが、ユーザーフォームのテキストボックスに下記のようなことは可能でしょうか? 例1)ユーザーフォーム上にある「テキストボックス」に「オプションボタン1」を選択するとワークシートのセル値を入力(反映)することは可能でしょうか? 例2)次に、「オプションボタン2」を選択すると、例1でテキストボックスに入力(反映)した値を消去し、かつ、このテキストボックスに数値を直接入力したら、ワークシートの別セルに入力した数値が反映されるようにすることは可能でしょうか? 例1・2)についてどのようなマクロを組めばよいのでしょうか? マクロにお詳しい方、大変申し訳ございませんか、ご指導お願いいたします。

  • マクロって・・・

    Excelシート1にデータ(管理番号1~500)1~300まではデータが存在しています。301~500迄はデータは無いのですが、今後入力する予定です。 Excelシート2に管理番号を入力したら、必要なデータが反映するようにVLOOKUPで作成しています。 管理番号を1~300まで入力→印刷すればOKなんですが、マクロで データが入力されている管理番号まで勝手に印刷出来る方法ってありますか?? おれば教えて下さい。 マクロを始めたばっかりで・・・ 

  • Excel 2007 マクロ 複数シートの検索

    Excel 2007 マクロ 複数シートの検索 Sheet1とSheetに情報があります。 Sheet1にある番号とSheet2にある番号を 検索して、ヒットした場合 Sheet1の備考の文字をSheet2に備考に反映したいです。 画像にSheet1、Sheet2、完成形があります。 関数であればVlookupを使用しますが、 マクロでできるようにしたいです。 どのようなマクロになりますでしょうか。 アドバイスお願いします。

このQ&Aのポイント
  • PX-M740Fからのメール送信ができなくなりました。セキュア接続(ssl)非対応で表示されます。
  • 機種自体が非対応なのか、設定変更にミスがあるのかわかりません。
  • 楽天ひかりに変えた後にメール送信ができなくなりました。アドバイスをいただけますか。
回答を見る

専門家に質問してみよう