現在申し込み票のExcelがあるのですが、マクロをボタンに登録してボタン一つ押すと申し込み票の名前と生年月日、住所が他のExcelのブック(例えば申込者名簿.xls)のシートに、名前→A1、生年月日→B1、住所→C1に入力されて保存されるようにしたいです。
更に次にもう一度ボタンを押した時には、名前→A2、生年月日→B2、住所→C2・・と言うようにどんどん書き足したいです。
書き足した後は元のExcelブックも申込者名簿.xlsも閉じるようにしたいです。
どのようにVBAを書けばよいのでしょうか?
まだVBA初心者のためいまひとつわかりません。
よろしくお願いいたします。
No.2ベストアンサー
- 回答日時:
ど~もぉ。
情報が少なかったのですが、想像で作ってみました。質問とは違うかもしれませんが参考にしてください。
まず、
<申し込み票.xls>シートの設定
セルA1 を「名前」
セルB1 を「生年月日」
セルC1 を「住所」
上記のようにデータを入力する場所とします。
<申込者名簿.xls>シートの設定
セルE1 に数式[=COUNTA(A:A)]を入力
次に、申し込み票.xlsに下記のコードをコピペする
(シート名が違う場合は、変更してください)
[Test1]は申込者名簿.xlsにデータをコピーするコード
[Test2]は両方のブックを保存後閉じるコード
------------------------------------------------------------------
Sub Test1()
Dim TargetSheet As Worksheet, TargetRow As Long
Dim DName As String, DBirth As Date, DAddress As String
With Worksheets("Sheet1")
DName = .Range("A1").Value
DBirth = .Range("B1").Value
DAddress = .Range("C1").Value
End With
Set TargetSheet = Workbooks("申込者名簿.xls").Worksheets("Sheet1")
With TargetSheet
TargetRow = .Range("E1").Value + 1
.Cells(TargetRow, 1).Value = DName
.Cells(TargetRow, 2).Value = DBirth
.Cells(TargetRow, 3).Value = DAddress
End With
Set TargetSheet = Nothing
End Sub
Sub Test2()
Workbooks("申込者名簿.xls").Close SaveChanges:=True
ThisWorkbook.Close SaveChanges:=True
End Sub
------------------------------------------------------------------
Excel2003
どうでしょ~
No.3
- 回答日時:
要点は
(1)他ブックの決まったシートをつかまえるコード(そしてセルに値を代入する)コピー・貼り付けは使わないほうがたやすい。
Xのブックのセルの値=Yのブックのセルの値、の形になるが、XもYもブック+シートを指定して、セルを指定する必要がある。
セルはブック名+シート名+Cells(i,j)で、捉える。iは行、jは列番号。
(2)お互い最下行を問題にすれば、よいと思うが最下行は
ブック名+シート名+Range("A65536").End(xlUP).Rowで捉えられるので、書き込みは+1下行を指して行う
あるいは代入を受ける側は、行ポインタで値代入行を管理し、一回ごとに+1して行く。
(3)ボタンのClickイベント関係の勉強。
ーー
VBAの初心者には少し難しい課題。
課題の丸投げの質問になっている。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) vba 同じブック内での転記について 4 2023/01/15 14:42
- Visual Basic(VBA) Excel VBA 同じ名前のフォルダがあれば作成したブックを格納するマクロをつくりたい 2 2023/01/16 16:19
- Visual Basic(VBA) Excel ファイルを指定し、指定されたファイル内にシートを統合するVBA 8 2023/07/10 10:09
- Excel(エクセル) アンケート集計用VBAについて教えて下さい。 約100人にアンケート内容が入ったExcelファイルを 1 2022/07/27 13:12
- Visual Basic(VBA) VBA 複数のブックに同じ列を表示させる方法 2 2022/07/20 23:49
- Visual Basic(VBA) Excel VBA 最終行を取得しVlookup関数をコピーする方法をコーディングで教えてください。 3 2023/05/11 13:14
- Visual Basic(VBA) EXCEL VBA 単語置き換え について質問です ブック名 ぶぶぶ シート名 ししし セル V3〜 3 2023/03/08 01:41
- Visual Basic(VBA) ExcelのVBAを使い、複数シートの同一箇所を、同一条件にて一括でソルバーを回す方法について 1 2022/04/23 11:49
- Excel(エクセル) 【Excel】指定のセル内容を基に別シートのセルを検索して選択する【VBA】 1 2022/06/16 16:16
- Visual Basic(VBA) 【困っています2】VBA 追加処理の記述を教えてください。 2 2022/08/26 11:42
このQ&Aを見た人はこんなQ&Aも見ています
-
性格の違いは生まれた順番で決まる?長男長女・中間子・末っ子・一人っ子の性格の傾向
同じ環境で生まれ育っても、生まれ順で性格は違うものなのだろうか。家庭教育研究家の田宮由美さんに教えてもらった。
-
Enterキーでマクロを起動さす。
その他(ソフトウェア)
-
エクセルVBAで作成した別ブックにVBAを記述したい
Access(アクセス)
-
UserForm1.Showでエラーになります。
工学
-
-
4
実行時エラー 438になった時の対処法を教えて下さい。
Visual Basic(VBA)
-
5
WorkBooksをオープンさせずにシートにコピーしたい【EXCEL VBA】
Excel(エクセル)
-
6
エクセルVBA ユーザーフォームのTextBoxを日付にしたい
Excel(エクセル)
-
7
VBAで複数のブックを開かずに処理する方法
Visual Basic(VBA)
-
8
エクセルVBAのIf,Then 構文でOr条件とAnd条件の結合方法?
Excel(エクセル)
-
9
VBA シートのボタン名を変更したい
Visual Basic(VBA)
-
10
エクセルマクロで、別のブックが開いているかを判定したいのですが。
その他(Microsoft Office)
-
11
マクロを利用して別ファイルにデータを書き込むには
その他(Microsoft Office)
-
12
VBA EXCEL 開かずにデータ操作
その他(Microsoft Office)
-
13
マクロボタンを別のファイルでも利用する方法
その他(Microsoft Office)
-
14
エクセルVBAでセルに入力したパスでブックを開く
Excel(エクセル)
-
15
QRコードで複数セルに一括入力はできないですか?
その他(IT・Webサービス)
-
16
VBAで保存しないで閉じると空のBookが残る
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Excelの「0」だけ非表示、小数...
-
エクセルで1月0日と表示される!!
-
別シートのセルを絶対参照にする
-
(Excel)あるセルに文字を入力...
-
日付が未入力の際はゼロか、空...
-
エクセルで特定の文字を打つと...
-
ExcelでTODAY関数を更新させな...
-
エクセルで条件に一致したセル...
-
複数シートの同じセル内容を1シ...
-
Rangeメソッドは失敗しました。...
-
セルの値と同じ名前のシートを...
-
VBAで、セル(Range)のオブジ...
-
Excelシートの保護時にデータの...
-
エクセルで20万行あるシート...
-
エクセルのマクロで全シートを...
-
エクセル ハイパーリンクで画像...
-
Excelのファイル容量が減らない...
-
エクセルの文字
-
EXCELマクロで、シート間でのコ...
-
エクセルで、文字列の入ったセ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excelの「0」だけ非表示、小数...
-
日付が未入力の際はゼロか、空...
-
エクセルで1月0日と表示される!!
-
エクセルで条件に一致したセル...
-
(Excel)あるセルに文字を入力...
-
Excelで複数シートの選択セルを...
-
Rangeメソッドは失敗しました。...
-
シート参照で変数を使いたい(EX...
-
別シートのセルを絶対参照にする
-
エクセルで複写のように自動入...
-
Excelシートの保護時にデータの...
-
excelでハイパーリンクになって...
-
エクセルで別シートからの最大...
-
複数シートの同じセル内容を1シ...
-
エクセルで20万行あるシート...
-
ExcelでTODAY関数を更新させな...
-
EXCEL関数でシート名が変わる可...
-
エクセルで、加筆修正したセル...
-
Excelのファイル容量が減らない...
-
エクセル ハイパーリンクで画像...
おすすめ情報