以前行った質問で、
(1)シート2のリストに入力=(2)シート1のフォームに反映(→(3)印刷)というものがあり
その際は皆さんに色々教えて頂いたヒントを元にリストとvlookupで解決しました。
しかし、今度は逆に、
(1)シート1のフォームを入力=(2)シート2のリストに反映→
(3)シート1で『確定』ボタン?を押す=(4)シート2が確定され→
(1)シート1で新たな入力→(2)…以下繰り返し
という事をしたいという依頼が来ました。
最終的には、常にシート1は入力用で、シート2が蓄積・保存用になる予定です。
サイトで色々調べ、(http://www.sigoto.co.jp/excel/)
多分マクロで書式の消去を使えば上手くいきそうな気がしているのですが、
具体的にどのように行えばよいのか掴めていません。
初心者な質問で申し訳ありませんが、どのようにすれば良いか教えて下さい・・・・!
ヒントになるようなサイトがあればお願いします。。
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に置き換えた方が良いかと思います。
丁寧な説明をありがとうございます!試してみます。
>Vlookup関数で表示させたセルに入力すると、Vlookup関数も消えてしまいます。
>こちらの機能もVBAに置き換えた方が良いかと思います。
とありますが、もしよろしければ具体的な方法を教えて下さい(><)
そこまでは・・・というのであれば、ネットでどのように調べれば出てくるか
ヒントを下さると大変助かります。
何度も申し訳ありませんが、よろしくお願いいたします。
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
と、先に紹介したマクロの式の=の左右を入れ替えて見てください。
式の内容を理解すると、やりたいことが自由に出来るようになります。
No.3ベストアンサー
- 回答日時:
No1,No2です。
>A1には、=MATCH(A1,Sheet2!A:A)
先ほどの、関数間違っていましたので、訂正の上確認下さい。
A2にいれた値をデータで探して、行番号を表示するので
A1には、=MATCH(A2,Sheet2!A:A)
が正しいです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) EXCEL マクロで 同じフォルダ内の複数ファイルの複数行全体を選択して1つのファイルに集約 4 2022/09/27 18:41
- Excel(エクセル) エクセルのマクロで複数シートを両面印刷するには? 2 2022/12/08 23:23
- Excel(エクセル) Excelでポイントの管理表を作成したいです。 個人ごとにシートを作成し、発行者のシートでポイントを 3 2023/08/22 16:59
- Excel(エクセル) 再度掲載させていただきます。 Excelでポイントの管理表を作成したいです。 個人ごとにシートを作成 4 2023/08/22 20:24
- Excel(エクセル) VLOOKUP が機能しない、その原因は何 ? 8 2022/10/19 12:06
- Excel(エクセル) ユーザー定義について質問です。 2 2023/06/28 13:21
- Excel(エクセル) エクセルで”入力シート”の文字書式の変更を”出力シート”で同じ文字書式で印刷したいです。VBA希望 4 2023/04/24 11:07
- Excel(エクセル) エクセルのフッタやヘッダーについて 3 2023/02/04 09:45
- Google Drive Googleスプレッドシートについて質問です。 今作っているデータで、 シート1→ベタ打ちでひたすら 2 2022/05/18 14:27
- Visual Basic(VBA) VBA 最終行まで数式をコピーする 3 2023/01/03 15:44
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VBAでエクセルシートを更新...
-
エクセルのシートを同時に行削...
-
Excelで、表に小計と合計を入れ...
-
excelで、セル内に文字が入力さ...
-
【エクセル】シートのロックで...
-
パソコンで購入したデーターが...
-
エクセルのチェックボックスを...
-
「24日の0時」って・・・
-
差し込み印刷に当日の日付が入...
-
日付の大小の表現
-
エクセルで最高値、最低値の日...
-
エクセル マクロ 名前を付けて...
-
回覧板の日付について質問です...
-
エクセルで数字から名前に変...
-
セブンnowは駅前とかでも配達し...
-
「時間」、「期日」、「日付」...
-
ACCESSで日付を指定すると、そ...
-
エクセルで縦書きルビの付け方
-
ウィンドウィズ メモ帳で日付だ...
-
VBA テキストボックスで日付を...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBAでエクセルシートを更新...
-
excelで、セル内に文字が入力さ...
-
エクセルのシートを同時に行削...
-
【エクセル】シートのロックで...
-
表示倍率を変更させない方法
-
エクセルで、2つのシートにある...
-
エクセルで別シート、または別...
-
エクセルの担当者別にシートを...
-
エクセルVBAで65536レコードを...
-
同一セルに入力規則のリストと...
-
仕事の引き継ぎでエクセルの習...
-
Excelのマクロで、開いた時に、...
-
エクセル表作成についてお分か...
-
Excelで、表に小計と合計を入れ...
-
シートを串刺しで抽出したいの...
-
マクロ!一覧から別シートへの抽出
-
ワードの差し込み印刷について
-
STAT VIEWが使えない!!!
-
エクセルで更新日時を表示したい。
-
エクセルシートの統合
おすすめ情報