- ベストアンサー
ExcelファイルをAccessでテキスト形式に変換する方法とは?
- ExcelファイルをAccessでテキスト形式に変換する方法について教えてください。
- テキスト形式に抽出した際にスペースとタブキーの間に違いがあります。タブキーと同じ効果を持たせる方法を教えてください。
- スマートフォンのアプリでうまく表示するためには、タブキーで空欄を入れる必要があるそうです。タブキーでの空欄を関数で表現する方法を教えてください。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
【要旨】 クエリ(SQL文)で使用する場合は、以下の式を使用すればOkです。 <現状(Spaceを使用)> [A] & " " & [B] & [C] <変更後(Tabを使用)> [A] & Chr(9) & [B] & [C] ※Accessのテーブル上では、Tab記号は表示できませんが、データと しては格納されています。 なお、テキストファイルへの出力時、『テキスト区切り記号』を使用 すると、Tab記号はその区切りの中に入れられてしまいますので ご注意下さい。 (「&」で結合する前の値をそれぞれ「"」で括る必要がある場合は、 「Chr(34)」(=「"」)などを使用して追加して下さい) 【解説】 Chr関数は、指定した文字コードに対応する文字を返す関数です。 ただ、これには調べたい文字の文字コードが必要です。 各文字の文字コードを調べるには、Asc関数を使用します。 例)半角スペースの文字コードを調べる場合: ?Asc(" ") (Ctrl+Gキーの同時押しで表示されるイミディエイトウィンドウに上記を 入力してEnterキーを押せば、次の行に文字コードが表示されます) 但し、Tab記号のような「制御文字」の場合は、Asc関数の引数として 直接入力することができませんので、「VBAで定義された定数を使用」 するか、「ヘルプまたは下記サイトなどでコードを確認」します。 例)Tab記号の文字コードを、VBAの定数を使用して調べる場合: ?Asc(vbTab) ASCII文字コードの参考サイト(一例): http://office.microsoft.com/ja-jp/word-help/HA010167539.aspx (「ASCII 非印字制御文字」の項目を参照)
その他の回答 (2)
- tsubuyuki
- ベストアンサー率45% (699/1545)
「説明書」の解説から入ります。 > アプリの説明書を読んでみると●の部分へ「tabキー」で空欄を入れる必要があると判明。 つまり、「Tab区切りテキストファイルを用意しなさい」と言う意味です。 Tab区切りテキストファイルの詳細は別途お調べください。 さて、手順。 アクセスでやりたいなら、まずはクエリを作るのが手っ取り早いです。 テーブル名がわかりませんので、「テーブル」とします。 同様にフィールド名がわからないので、左から順に「英・日・記号」とします。 そうすると、こんなクエリ SELECT テーブル.英 AS Q1, [日] & [記] AS Q2 FROM テーブル; ができます。 これをエクスポートしてやります。 順に、クエリを右クリック→エクスポート、ファイルの種類をテキストファイルにし、 適宜、名前をつけてエクスポートボタン。 区切り記号付きを選択し、次へ。 区切り記号に「タブ」を選択、テキスト区切り記号を「なし」に設定し、次へ。 ファイル名を確認し、OK。 以上で、Tab区切りテキストファイルが出来上がります。 どうしても関数を使って1フィールドにこだわるなら、 investigation&Chr(9)&[名]調査 &";" こうでしょうかね。 上手くいくかどうかは保証できませんが。 エクセルでやるならもう少し簡単です。 > A B C > 1行目 investigation [名] 調査 ; コレを、 A B 1行目 investigation [名] 調査; こんな感じに加工し、名前をつけて保存。 ファイルの種類を「テキスト(タブ区切り)」に設定、名前を指定して保存。 これで、Tab区切りテキストファイルが出来ます。 わからない言葉が出てきたら調べる癖をつけないと時間ばかりかかりますよ。 ついでなので。 「 ; 」は「セミコロン」と言います。 「コロン」は「 : 」こちらですよ。
- masatsan
- ベストアンサー率15% (179/1159)
accessで変換する意味が良くわからないのですが。 Excelで名前をつけて保存で TAB区切りではだめですか?
補足
>Excelで名前をつけて保存で TAB区切りではだめですか? 返信ありがとうございます。 「名前をつけて保存」「TAB区切り」というのが逆にわかりませんが、具体的にはExcelをテーブルにインポートした後、テーブルの英語部分に更新クエリで日本後と;をひとつにまとめる関数を以下のようにしました。 investigation&" "&[名]調査 &";" 上の『&" "&』の部分を『スペースキー1個分』ではなく『タブキー1個分』にしたいという意味です。 更新したテーブルにはいらいなくなった日本語と;が付いたままなので、Accessでテーブル作成クエリを用い英語部分(更新後)だけのテーブルを作成した後、マクロでテキスト形式にエクスポートしたこの一連作業のことを『変換』という単語で表現したつもりでした。 よろしくお願いします。
お礼
大変よくわかりました。ありがとうございます。早速やってみたところバッチリうまくいきました。ありがとうございました。