Access VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


1587 / 2272 ツリー ←次へ | 前へ→

【6372】文字列の処理方法 Saiyama 05/9/28(水) 11:45 質問[未読]
【6373】Re:文字列の処理方法 小僧 05/9/28(水) 11:55 回答[未読]
【6388】Re:文字列の処理方法 Saiyama 05/10/1(土) 17:12 質問[未読]
【6389】Re:文字列の処理方法 小僧 05/10/1(土) 21:59 回答[未読]
【6390】Re:文字列の処理方法 Saiyama 05/10/1(土) 22:48 質問[未読]
【6391】Re:文字列の処理方法 hatena 05/10/1(土) 23:54 回答[未読]
【6392】Re:文字列の処理方法 Saiyama 05/10/2(日) 10:20 お礼[未読]

【6372】文字列の処理方法
質問  Saiyama  - 05/9/28(水) 11:45 -

引用なし
パスワード
   こんにちは
 初めて、投稿しました。
 テーブルにあるフィールドに対して、以下のような処理を行いたいですが、
処理方法はわかりません、よろしくお願いします。

規格名の構成は半角数字(1〜3桁)と文字(一文字)となっています。
やりたいことは、規格名の数字だけを分離させたいです。

規格名
100A
10A
1A
処理後
規格名
100
10
1

【6373】Re:文字列の処理方法
回答  小僧  - 05/9/28(水) 11:55 -

引用なし
パスワード
   ▼Saiyama さん:
こんにちは。

>規格名の構成は半角数字(1〜3桁)と文字(一文字)となっています。

文字が右 1 文字で確定でしたら、Left 関数 と Len 関数の組み合わせで可能ですね。

Left([規格名],Len([規格名]) - 1)


後は

>規格名
>100A
>10A
>1A

のような形を残すのであればクエリ抽出しながら、

今後、単位が絶対に必要でないのであれば更新クエリで処理が可能です。

【6388】Re:文字列の処理方法
質問  Saiyama  - 05/10/1(土) 17:12 -

引用なし
パスワード
   小僧さん
 こんにちは、問題解決でき、ありがとうございます。
新しい質問がありますので、よろしくお願いします。
解決したいことは、
クエリ
規格名  数量   単位
120g/P  120    g
10斤/袋  10    斤
3枚/セット 3    セット 

【6389】Re:文字列の処理方法
回答  小僧  - 05/10/1(土) 21:59 -

引用なし
パスワード
   ▼Saiyama さん:
こんばんは。

数値だけ抜き出すのは
過去ログなのですが、以下が参考になりませんでしょうか?

http://www.vbalab.net/vbaqa/c-board.cgi?cmd=ntr;tree=6119;id=access

問題は単位なのですが、

>  120g/P  120    g
>  10斤/袋  10    斤
>  3枚/セット 3    セット

単位を抜き出す方法は、法則性がないと処理する事はできません。
この3種類に限った場合だけで良いのか、それとも何か法則があるのか
もう一度ご質問して下さい。

その際に Access のバージョンを明記して下さると助かります。
(バージョンによって使えない関数がありますので…)

【6390】Re:文字列の処理方法
質問  Saiyama  - 05/10/1(土) 22:48 -

引用なし
パスワード
   こんばんは、早速やってみました、数値だけの抽出が問題ありません。

>この3種類に限った場合だけで良いのか、それとも何か法則があるのか
>もう一度ご質問して下さい。

法則:単位の構成は数値部分、文字部分の順になっています。
   文字部分の中に「/」があります。
分解:数字と分母の文字列を分けたい。
例、

単位    数字部分   文字部分 
100g/P   100       P
3斤/袋   3       袋
5枚/セット 5       セット

OS:WINXP
Access:2002

【6391】Re:文字列の処理方法
回答  hatena  - 05/10/1(土) 23:54 -

引用なし
パスワード
   >単位    数字部分   文字部分 
>100g/P   100       P
>3斤/袋   3       袋
>5枚/セット 5       セット

数字部分は、Val関数で取り出せますね。

Val([単位])

文字部分(/ の後ろ)は

Mid([単位],InStr([単位],"/")+1)

【6392】Re:文字列の処理方法
お礼  Saiyama  - 05/10/2(日) 10:20 -

引用なし
パスワード
   小僧さん
hatenaさん
 ありがとうございました。
 

1587 / 2272 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
1078242
(SS)C-BOARD v3.8 is Free