
No.4ベストアンサー
- 回答日時:
#1です。
データの持ち方がよくわかってないのですが
別シート等にコード、名前が載ってるってことなんでしょうかね?
上記の仮定でいくと
Worksheet_Change で Target が引数として渡されてまさうよね。
それをうまく使ってあげましょう。
入力したセルのひとつ横、に表示してあげればいいわけですから
現状、1ヶ所であればできる、と言っているコーディングがどのようなモノかわからないんですが
Range か Cells でセルを指定してますよね?
Cells で指定すると仮定して、
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 1 Then
表示したいデータの検索
Cells(Target.Row, 2) = 表示したいデータ
End If
End Sub
という感じではどうでしょう?
No.3
- 回答日時:
エクセルの問題です。
エクセルVB・VBAでも出来ますが(とくにアクセスの得意分野)エクセルの関数=VLOOKUP()を使います。まずSheet2のA列に番号、B列の同行に対応する名前を入力し表を作成します。Sheet1のA列に番号を入れるとして、B列のB1に
=VLOOKUP(A1,Sheet2!$A$1:$B$500,2,FALSE)
といれ、B2以下適当に下へ複写します。
A列に番号を入れるとB列に名前が出ます。
テスト済み。
A列に入力していないB列のエラー#N/Aを出さないことは出来ますが、略します。
回答ありがとうございました。
おっしゃる通りです。
ただ、VLOOKUP関数を使って出来るのは知っているんですが、あくまでもエクセルVBAでやりたいのです。
すみません…
でも、回答いただいて嬉しいです。
ありがとうございました。
No.2
- 回答日時:
500件近くあるデータとは、入力するデータ(行)が500件あるのでしょうか?それとも、コードが500種類あるのでしょうか?まあどちらにしろ、何度もデータベースに読みに行くのは時間がかかるので、最初にコードと名前を全部読み込んでおく方がいいと思います。
A列にコードを入力し終わったらマクロを実行して、データベースからコードを名前を取得。その後まず1行目A列を読んで、それにに対応する名前を1行目B列に表示させる、次に2行目・・とやっていって、最終行まで実行するという。
具体的なコーディングは、そのブックや表の構成など(空白行があるのかとか)も書いたほうが回答が得やすいと思いますよ。シートがいっぱいある場合、データベースから取得するタイミングも違ってくることもあると思います。
この回答への補足
質問内容が、わかりにくかったようで申し訳ありません。
私が作りたいのは、A列にコードを入力するたびにB列に名前を表示させる…ということなのです。
その表には、C列やD列(同行)にもデータをいくつか入力する表ですので、最後に表示するという形はとりたくないのです。
わかりづらい文章ですみません。よろしくお願いします。
No.1
- 回答日時:
Excelの方で質問したほうがいいように思いますが・・・それはいいとして。
データベースはなにをお使いなのでしょう?
> データが約500件近くあるので、出来れば列単位で設定する方法はないでしょうか?
Excelのシート関数ではなくて、VBAを使ってるんですよね?
設定というのが何を指しているのかわからないのですが。
a.A列に入力するたびにB列を表示させたい
b.A列を一通り入力し終えてから一気に表示させたい
a、b、またはもっと別の方法で実現したいのか・・・によって手段が変わってくると思いますが、
aであれば Worksheet_Change イベントで処理をすればいいと思います。
bならボタンを作るか、メニューからマクロの呼び出しをして動く関数を作ればいいと思われます。
質問の意味を取り違えていたらごめんなさい。(^-^;
この回答への補足
質問内容が、わかりにくかったようで申し訳ありません。
表示方法は、(a)です。
Worksheet_Change イベントで
例えば、A2にコードを入力してB2に名前を表示させるという
1ヶ所だけの特定のセルに表示させる方法は解るのです。
ただ、500件(行)近くのデータを入力するので、いちいちA2入力→B2表示、A3入力→B3表示、とひとつひとつ設定するわけにもいかず、なんとか列単位でできる構文がないものか…ということなのです。
表現が下手で、わかりにくいかもしれませんが宜しくお願いします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するQ&A
- 1 エクセル、VBAで検索するとデータベースから一括で結果が抽出される検索エンジンを作りたい
- 2 Visual Basic 2017で.mdb形式のデータベースを検索したいです。 データベースのフィ
- 3 データベースのデータをTextBoxに入力された値で検索しDataGridViewに表示する方法
- 4 【VB】データグリッドコントロールにデータベースを表示させたい
- 5 エクセルVBAのデータベース接続について
- 6 Access2000データベースのロックについて
- 7 エクセルVBA印刷エラー(Windows98,Me)
- 8 アクセス2000のデータベースにテーブルを追加して、フィールドを作成したい
- 9 アクセス2000で作成したデータベースにテーブルを追加したいのです 「Set tbl = catDB.Tables![会費管理2]」
- 10 データベースの検索
関連するカテゴリからQ&Aを探す
おすすめ情報
人気Q&Aランキング
-
4
Cellsのかっこの中はどっちが行...
-
5
■近似している文字列を抽出したい
-
6
【VBA】ExcelマクロでCSVファイ...
-
7
VBAで散布図(グラフ)の作成
-
8
マクロ 最終列をコピーして最終...
-
9
VBAで別のブックの値をVlookup...
-
10
DataTableに入っているデータを...
-
11
excel 別ブックのデータをvbaで...
-
12
マクロについて。S列の途中から...
-
13
【VBA】全角半角入り交じった住...
-
14
[Excel]ADODBでNull変換されて...
-
15
Excel VBAでグループ毎に集計す...
-
16
各個体に対する平均値の自動計...
-
17
Excel VBA:エクセルのマクロで...
-
18
バドミントンの対戦表をエクセ...
-
19
Excel VBA 同順位の順位補正に...
-
20
IIF関数の使い方