Excel VBA質問箱 IV

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

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


8680 / 13645 ツリー ←次へ | 前へ→

【31839】空白も加味した文字の長さを求める方法を教えて下さい。 しぇんえん 05/11/30(水) 19:49 質問[未読]
【31840】Re:空白も加味した文字の長さを求める方法... かみちゃん 05/11/30(水) 20:05 回答[未読]

【31839】空白も加味した文字の長さを求める方法を...
質問  しぇんえん  - 05/11/30(水) 19:49 -

引用なし
パスワード
   初心者なので教えて下さい。

dim wk_Str as String

    「123456789ABCDEFGHIJKLMNOPQRS」(※Byte数だと思ってください。)
wk_Str= "〜あいうえお-----01234567------" (※"-"は半角空白)

上記の文字項目から"1234567"の部分だけを取得したいのですが
RightB(wk_Str,13)と記述すると "01234567"が取得されてしまいます。
おそらく空白はカウントされていないからだと
思うのですが、空白も加味して指定の文字を
取得する方法を教えてください。

※わかりづらい説明で申し訳ございませんが宜しくお願いします。

【31840】Re:空白も加味した文字の長さを求める方...
回答  かみちゃん  - 05/11/30(水) 20:05 -

引用なし
パスワード
   こんにちは。かみちゃん です。

>wk_Str= "〜あいうえお-----01234567------" (※"-"は半角空白)
>
>上記の文字項目から"1234567"の部分だけを取得したいのですが
>RightB(wk_Str,13)と記述すると "01234567"が取得されてしまいます。

RightB関数のような関数は、対象の文字列をStrConv関数を利用し、データを
Unicodeに変換する必要がありますので、以下のようにする必要があります。
 MsgBox StrConv(RightB(StrConv(wk_str, vbFromUnicode), 13), vbUnicode)

詳しくは、以下のURLを参考にしてみてください。
http://support.microsoft.com/default.aspx?scid=kb;ja;408879
http://www.moug.net/tech/exvba/0140020.htm
http://www.zenko3.com/tips/ascii_string.html

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