次の方法で共有

クエリから、スペースは除きVBAで抽出したいのですが?

Anonymous
2019-01-02T11:51:36+00:00

住所テーブルの番地フィールドに(12-5)・(12- 5)・(1 2-5)のようなデータを【12-5】で抽出したいのですが?可能でしょうか。

住所テーブルを選択クエリで作成しTRIM関数で前後にあるスペースは削除できましたが中にあるスペースは削除できません。

よろしくお願いします。

 Private Sub コマンド0_Click()

  Dim DB As DAO.Database

  Dim RS As DAO.Recordset

  Dim i As Integer

     Set DB = CurrentDb

     Set RS = DB.OpenRecordset("住所Q")

     FILE = Me.[番地]     

     FILE = "[番地]='" & FILE & "'"

     RS.Filter = FILE

     Set RS = RS.OpenRecordset()

     If RS.RecordCount = 0 Then

                MsgBox "該当するレコードは見つかりません"

             Else

                Do Until RS.EOF

                    MsgBox RS![町名(漢字)]                

                   RS.MoveNext

                Loop

             End If    

     RS.Close: Set RS = Nothing

End Sub

Microsoft 365 と Office | アクセス | 家庭向け | Windows

ロックされた質問。 この質問は、Microsoft サポート コミュニティから移行されました。 役に立つかどうかに投票することはできますが、コメントの追加、質問への返信やフォローはできません。

0 件のコメント コメントはありません

質問作成者が受け入れた回答

  1. Makapu 91,790 評価のポイント ボランティア モデレーター
    2019-01-02T12:33:44+00:00

    こんにちは。

    住所テーブルの番地フィールドに(12-5)・(12- 5)・(1 2-5)のようなデータを【12-5】で抽出したいのですが?可能でしょうか。

    住所テーブルを選択クエリで作成しTRIM関数で前後にあるスペースは削除できましたが中にあるスペースは削除できません。

    文字列の中にあるスペースを削除するのには、Replace関数を使用すると良いですよ。

    Replace 関数

    (例)番地1: Trim(Replace([番地]," ",""))

    <結果>

    ----追記----

    ・先頭と末尾の両方のスペースを削除するTrim関数をなんとなく付けておりましたが、省いて大丈夫でした。

    ・番地が Null の場合に「#エラー」を回避する為 Nz関数を使用します。

    番地1: Replace(Nz([番地])," ","")

    1 人がこの回答が役に立ったと思いました。
    0 件のコメント コメントはありません

1 件の追加の回答

並べ替え方法: 最も役に立つ
  1. Anonymous
    2019-01-02T13:12:57+00:00

    Makapu様

    問題が解決できました。

    有り難うございました。

    0 件のコメント コメントはありません