質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.46%
VBA

VBAはオブジェクト指向プログラミング言語のひとつで、マクロを作成によりExcelなどのOffice業務を自動化することができます。

Access

Accessはマイクロソフトによるリレーショナルデータベース管理システムです。オブジェクト指向のアプリケーション作成に対応しており、テーブルや編集をはじめ、クエリ生成、入力フォーム作成、レポート作成など一通りの機能を備えています。

Q&A

解決済

2回答

926閲覧

access:同じレコード内でのコピー貼付けクエリ

abcs

総合スコア11

VBA

VBAはオブジェクト指向プログラミング言語のひとつで、マクロを作成によりExcelなどのOffice業務を自動化することができます。

Access

Accessはマイクロソフトによるリレーショナルデータベース管理システムです。オブジェクト指向のアプリケーション作成に対応しており、テーブルや編集をはじめ、クエリ生成、入力フォーム作成、レポート作成など一通りの機能を備えています。

0グッド

0クリップ

投稿2020/03/03 01:18

一つのレコード内で、同じ情報であれば入力せずにボタンを押すとコピーして表示されるようにしたいのですが、初心者過ぎてわかりません。
例:
契約者住所  →   送付先住所(契約者住所と同じ場合ボタンを押すとそのまま表示)
000-1234       000-1234
北海道札幌市     北海道札幌市

宜しくお願い致します。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

コピーするのではなくて、同じかどうかの情報を持たせた方が良いかと思います。
そうでないと、コピー後にコピー元を変更した場合まで考慮が必要になりますので。

投稿2020/03/03 01:56

sazi

総合スコア25206

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

abcs

2020/03/03 03:17

なるほどですね! 有難うございます!!
guest

0

ベストアンサー

テーブルと連結したフォーム上で入力作業をしているのだという前提で、回答します。

フォーム上にコマンドボタンを配置して、クリック時のイベントプロシージャを下記のように記述します。
コマンドボタンの名前は btnAddressCopy としてください。

vba

1Private Sub btnAddressCopy_Click() 2 If Me.契約者住所.Value <> "" Then 3 Me.送付先住所.Value = Me.契約者住所.Value 4 End If 5End Sub

投稿2020/03/03 01:27

hatena19

総合スコア33790

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

abcs

2020/03/03 01:44

ご回答有難うございます、やってみたのですが反映されずです、、
hatena19

2020/03/03 01:49

ボタンをクリックしたときにエラーはでませんか。 でるならエラーメッセージを教えてください。 何の反応もないなら、下記のようにコードを変更して、クリックしたときに「クリックしました」というメッセージが表示されますか。 Private Sub btnAddressCopy_Click() Msgbox "クリックしました。" If Me.契約者住所.Value <> "" Then Me.送付先住所.Value = Me.契約者住所.Value End If End Sub
abcs

2020/03/03 01:53

何も表示されません、
abcs

2020/03/03 01:58

すみません、作り直したらクリックしましたとでました!
abcs

2020/03/03 01:59

ただ反映されずです、
abcs

2020/03/03 02:08

できました!有難うございます!! 何度も申し訳ないのですが、例えば住所フィールドがいくつか区切られていて、契約者郵便番号、契約者都道府県、住所などの場合はどのようにしたらよろしいでしょうか、
hatena19

2020/03/03 02:27

代入するコードを追加するだけです。 Private Sub btnAddressCopy_Click() If Me.契約者住所.Value <> "" Then Me.送付先郵便番号.Value = Me.契約者郵便番号.Value Me.送付先都道府県.Value = Me.契約者都道府県.Value Me.送付先住所.Value = Me.契約者住所.Value End If End Sub
abcs

2020/03/03 02:46

ありがとうございます! 一点確認なのですが、フォーム上ボタンを押して、空欄になっているテキストボックスを押すと反映されるのですが、こちらは一発で反映されないものなのでしょうか、現状郵便番号、都道府県、市区町村などのテキストボックスを押さないと反映されません、
hatena19

2020/03/03 02:51

通常はすぐ反映するはずなんですが、 とりあえず最後に Me.Repaint を追加してみてください。 Private Sub btnAddressCopy_Click() If Me.契約者住所.Value <> "" Then Me.送付先郵便番号.Value = Me.契約者郵便番号.Value Me.送付先都道府県.Value = Me.契約者都道府県.Value Me.送付先住所.Value = Me.契約者住所.Value End If Me.Repaint End Sub
abcs

2020/03/03 03:04

変わりなしです、ボタンを押したあとにビューをきりかえたりすると一気に反映されるんですけど、やはり1つずつ押さないと駄目です、
hatena19

2020/03/03 03:10

Me.Recalc あるいは Me.Refresh も試してみてください。 ちなみにフォームは単票フォームですか、帳票フォームですか、分割フォームですか。
abcs

2020/03/03 03:16

かしこまりました! 単票です!
abcs

2020/03/03 03:17

Me.Recalc でできました!! ありがとうございます!!!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.46%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問