
今、職場でエクセルで管理しているデータ。
パソコンに強い人が作ったので、
関数もマクロもいっぱい!!
充分機能するのですが、やはり限界も感じるらしく
アクセスで作り直してみない?と言われました。
これから、業務の関係で10日ほどはゆとりがあるからです。
6年ほど前に学校で学んだ知識を思い出しながら、
テーブルとフォームを作成しました。
でも、VLOOKUPのような関数はアクセスでは使えないのでしょうか?
金融機関を銀行・支店コードから引っ張ってきたいのです。
それと、郵便番号も地域が限られているので、
町名から引っ張ってきたいのですが、可能でしょうか?
この質問をエクセルで作った本人が読んでいたら・・・
恥ずかしいと思いつつ、できるだけ良いものを作りたいので
質問させていただきました。
よろしくお願いします。
A 回答 (4件)
- 最新から表示
- 回答順に表示
No.3
- 回答日時:
Access と Excel の重大な相違点の一つは SQL言語を使うことではないでしょうか?
<ZipList>
ZIP_________Address
1111111__大木町
1111112__天神町
1111113__坂下町
[イミディエイト]
? DBLookup("SELECT ZIP FROM ZIPLIST WHERE ADDRESS='大木町'")
1111111
? DBLookup("SELECT ZIP FROM ZIPLIST WHERE ADDRESS LIKE '天神%'")
1111112
フォームの[イミディエイト] では、このように関数をテストすることが出来ます。
このテストで判るように、SQL文のSELECT文がVLOOKUPに匹敵すると考えることも出来ます。
クエリは、この機能を利用する仕組みのようなものです。
なお、DBLookup関数は、この回答のために書いたものです。
SQL文に堪能であれば、DBLookup関数で大概のことがやれると思います。
この回答は、現実には意味をなさないとは思います。
軸足は、「SQL文も課題ですよ」にあります。
Public Function DBLookup(strQuerySQL As String) As Variant
On Error GoTo Err_DBLookup
Dim DataValue
Dim rst As ADODB.Recordset
Set rst = New ADODB.Recordset
With rst
.Open strQuerySQL, _
CurrentProject.Connection, _
adOpenStatic, _
adLockReadOnly
If Not .BOF Then
.MoveFirst
DataValue = .Fields(0)
End If
End With
Exit_DBLookup:
On Error Resume Next
rst.Close
Set rst = Nothing
DBLookup = DataValue
Exit Function
Err_DBLookup:
MsgBox "SELECT 文の実行時にエラーが発生しました。(DBLookup)" & Chr$(13) & Chr$(13) & _
"・Err.Description=" & Err.Description & Chr$(13) & _
"・SQL Text=" & strQuerySQL, _
vbExclamation, " 関数エラーメッセージ"
Resume Exit_DBLookup
End Function

No.2
- 回答日時:
accessでがvlookupという関数があります。
が私はほとんど使いません。
他の機能を使うことが多いです。
連結フォームやコンボボックス、リストボックスのレコードソースのSQLを書き換えたり、
ADOなどで検索したりすることが多いです。
他のデータベースを参照したり、他のプログラムに書き換えるときにはそのほうが都合がよいと思います。

No.1
- 回答日時:
可能です。
様々な実装が考えられますが、少し慣れればエクセルより遙かに手続きは簡単です。一つのポイントは「クエリー」を理解することです。これはリレーショナルデータベースの基本なので、アクセスと限らず、勉強することは大変有効です。で、「具体的にどうするか」が一番知りたいところとは推察しますが、文字だけで表現するのは辛いものがあります。また実用的なフォームを完成させるためには、他にも色々な知識が必要になると考えます。お奨めしたいのは参考書の購入です。それを利用し、具体的に判らない箇所を質問すれば、具体的な回答が付くことと思います。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Access(アクセス) スキルシートのエクセルの項目に 2 2023/04/04 22:41
- Excel(エクセル) エクセル関数のXlookupのフィルハンドル機能(類した機能でも可)を知りたいです。 3 2022/09/20 20:02
- Excel(エクセル) Excel2016 行間を詰めたい&同じカテゴリなら上位2つだけを表示したい 5 2022/06/03 12:19
- その他(データベース) Microsoft Accessについて 1 2022/06/06 16:20
- Excel(エクセル) エクセル 指定セル繰り返しマクロ 4 2022/06/06 17:08
- その他(Microsoft Office) エクセルで1行の長いデータを指定の桁数で分割する方法が知りたいです。 4 2022/05/20 21:55
- 銀行・ネットバンキング・信用金庫 ゆうちょ銀行の窓口でのお金の引き出し方について等 ゆうちょ銀行に関わらず、銀行を利用した経験がほぼほ 5 2022/10/24 23:49
- 銀行・ネットバンキング・信用金庫 ゆうちょ銀行に口座を持つ方、ゆうちょ銀行に詳しい方に聞きます。 9 2023/08/03 20:24
- Excel(エクセル) Excelの関数についての質問です。(vlookup関数) A列 B列. C 1 大阪 50. 検索 6 2023/08/11 13:35
- その他(パソコン・スマホ・電化製品) エクセル初心者です。 仕事でエクセルを使っていて、普段は素人でもできる簡単な関数を使ったことがある程 1 2022/05/25 11:17
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
テキストボックスの値をテーブ...
-
選択したチェックボックスのみ...
-
accessの自動更新処理をできな...
-
Bit型のフィールドの編集でエラー
-
アクセス 0以外をカウントす...
-
ACCESSのテーブルとフォーム
-
Accessのフォーム上にレコード...
-
アクセスでテーブルの変更内容...
-
ACCESSのフォームからデータの...
-
ADOでRecordsetオブジェクトを...
-
「メソッドまたはデータメンバ...
-
テキストボックス(アクセス)内...
-
ACCESSフォームでのレコード数...
-
Accessのハイパーリンクのパス...
-
アクセスのフォームのビューが...
-
アクセスVBA TOP値を変数
-
フォームがクラシック表示にな...
-
ACCESSで、フォームのレコード...
-
Access2000 テキストボックス...
-
Accessのフォームに表示...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Accessのフォーム上にレコード...
-
アクセスのフォームのビューが...
-
アクセスでテーブルの変更内容...
-
選択したチェックボックスのみ...
-
ACCESSのフォームからデータの...
-
Access 別フォームへの再クエ...
-
accessの自動更新処理をできな...
-
ACCESSで入力フォームをHTMLフ...
-
Accessフォームのテキストボッ...
-
Accessのフォームで作業領域を...
-
アクセスでの項目追加について...
-
Access2002 フォームを閉じるた...
-
アクセス 0以外をカウントす...
-
Accessのハイパーリンクのパス...
-
入力途中の入力した値をすべて...
-
Access フォーム上でコンボボッ...
-
ADOでRecordsetオブジェクトを...
-
Accessのフォーム画面について
-
ACCESSでテーブルから選択,表示...
-
帳票フォームに全レコードを表...
おすすめ情報