Excel VBA質問箱 IV

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

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


2350 / 13646 ツリー ←次へ | 前へ→

【68569】VBAフォームから入力文字と直接入力の制御 金鮒魚 11/3/26(土) 13:31 質問[未読]
【68570】Re:VBAフォームから入力文字と直接入力の制... bus stop 11/3/26(土) 15:18 発言[未読]
【68572】Re:VBAフォームから入力文字と直接入力の制... 金鮒魚 11/3/26(土) 16:18 お礼[未読]
【68575】Re:VBAフォームから入力文字と直接入力の制... bus stop 11/3/26(土) 17:24 発言[未読]
【68581】Re:VBAフォームから入力文字と直接入力の制... 金鮒魚 11/3/27(日) 15:19 お礼[未読]
【68571】Re:VBAフォームから入力文字と直接入力の制... かみちゃん 11/3/26(土) 15:19 発言[未読]
【68573】Re:VBAフォームから入力文字と直接入力の制... 金鮒魚 11/3/26(土) 16:23 お礼[未読]
【68574】Re:VBAフォームから入力文字と直接入力の制... かみちゃん 11/3/26(土) 16:29 発言[未読]
【68582】Re:VBAフォームから入力文字と直接入力の制... 金鮒魚 11/3/27(日) 15:36 お礼[未読]

【68569】VBAフォームから入力文字と直接入力の制御
質問  金鮒魚 E-MAIL  - 11/3/26(土) 13:31 -

引用なし
パスワード
   はじめまして

VBAのFORMからEXCELLのCELLに文字入力をしたものと直接CELLに入力したものを
SORTすると同じ姓である天本が違う行に位置する現象を制御したいのですが・・

PHONETIC関数で見てみると

天本 アマモト・・・・直接入力時
天本 天本・・・・・・FORMから入力した時

ちなみにFORM入力したものを手打ちで入力し直すとアマモトに変換されます
HEX関数でASCIIコードを表示させスペースがないことも確認しています

HELPでPHONETICS.CHARACTERS等を見てみましたがOBJECTがRANGEという事もあり
お手上げ状態です
何故こうした現象が起こるのか原因すら分かりません

SORTをした時同じ姓を連続して表示するのが目的です

御知恵をおかりできませんでしょうか

【68570】Re:VBAフォームから入力文字と直接入力の...
発言  bus stop  - 11/3/26(土) 15:18 -

引用なし
パスワード
   セルに直接入力した場合のみ、ふりがなの取得が可能です。
他アプリからコピーペーストしたり、VBAで書き込んだ時は、
ふりがなの取得はできません。

ht tp://www.loadsystem.net/excel/furigana.htm
ここでUserForm上のテキストボックスでふりがなを取得する例があります。
難易度は高めです。


ふりがなを取得できたら、シートに転記する際に

Range("A1").Value = TextBox1.Value '漢字
Range("A1").Phonetic.Text =TextBox2.Value 'フリガナ

として、ふりがな情報を付加する事ができます。

既にフォームより入力してしまっている名前については、GetPhoneticが
使えると思います。GetPhoneticは複数の読みを返してきますので
ユーザーが選択して確定させる仕組みを作るか、1つめに返してくる
ふりがなで我慢するかの2通りになるかと思います。


参考になれば。

【68571】Re:VBAフォームから入力文字と直接入力の...
発言  かみちゃん E-MAIL  - 11/3/26(土) 15:19 -

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

>SORTをした時同じ姓を連続して表示するのが目的

Excelのバージョンと現在のコードがよくわかりませんが、
SortMethod:=xlStroke
として、ソートするときに「ふりがなを使わない」とすることでもよいかと思います。

【68572】Re:VBAフォームから入力文字と直接入力の...
お礼  金鮒魚 E-MAIL  - 11/3/26(土) 16:18 -

引用なし
パスワード
   ▼bus stop さん:

非常に参考になりました
質問の趣旨をご理解頂き、ましてやHPの紹介まで頂き感謝感激いたして
おります
さっそく解決に向け改修したいと思います
これが解決しないと根本的に作業を見直さなければならないところに
きており、もしそうなれば非常な労力が必要になるところでした
ありがとうございました

【68573】Re:VBAフォームから入力文字と直接入力の...
お礼  金鮒魚 E-MAIL  - 11/3/26(土) 16:23 -

引用なし
パスワード
   ▼かみちゃん さん:

早速のアドバイスに感謝しております
SORTMETHODの二種類は試しておりこの方法では結果として
同じグループの位置にこない、PHONETICのカタカナグループと
同漢字グループに分かれてしまいました

かみちゃんの優しいお言葉に感謝の意を表します
ありがとうございました

【68574】Re:VBAフォームから入力文字と直接入力の...
発言  かみちゃん E-MAIL  - 11/3/26(土) 16:29 -

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

>SORTMETHODの二種類は試しておりこの方法では結果として
>同じグループの位置にこない、PHONETICのカタカナグループと
>同漢字グループに分かれてしまいました

どのように試されましたか?
Excelのバージョンがわからないと申し上げたのですが、それの説明をせずに、
「試したけどできなかった」という趣旨の発言は、疑問を感じます。

こちらでは、Excel2002 SP3 で動作確認してあります。

【68575】Re:VBAフォームから入力文字と直接入力の...
発言  bus stop  - 11/3/26(土) 17:24 -

引用なし
パスワード
   ▼金鮒魚 さん:

GetPhoneticについては、こちらが参考になると思います。

Office Tanaka ← 定評のあるサイトです。
ht tp://officetanaka.net/excel/vba/tips/tips49.htm

興味本位ですが、ふりがなのない名前はどの位あるのでしょう?


私は4000人程のふりがながないデータをユーザーさんに,
GetPhoneticを使ってListBoxにふりがなの一覧表示、選択、確定
という作業でやってもらいましたが、

ユーザーさん、泣いてました.. 元のデータが悪かったのでしかたがないのですけどね(^^) 並び替えで必要だったのではなく、ふりがなそのものが必要だったので

【68581】Re:VBAフォームから入力文字と直接入力の...
お礼  金鮒魚 E-MAIL  - 11/3/27(日) 15:19 -

引用なし
パスワード
   ▼bus stop さん:

至れり尽くせりのご配慮痛み入ります
マスターの登録はすでに3000件を超えつつあります
マスターから条件付フィルターの条件をつけるため
ソートをかけ同じ姓の重複をさけ集計するといった
作業をしています、すなわち同じ姓の合計がほしかったのです

GetPhoneticの利用を以下のように考えています

myString=TextBox1.Text

.cells(r,c)=myString
Furigana=Application.GetPhonetic(.cells(r,c))
.cells(r,c + 1)=Furigana

要はSORT時いつも同じ場所に位置すれば目的は達せられるので
読み方は特定しなくても GetPhonetic での一番目の読みで
統一できればよいことになります

自分では考えも及ばない処理をご教授されて心はうきうき状態です
知ることはこんなにも楽しいものなのですね

bus stopさん
ありがとうございました

ちなみにVBを始めたきっかけは過去にBASICをかじったことがあり
非常に入りやすかったためです
今 VB 2008 EXPRESS EDITION を入手して勉強中です
ただVBAとはかってが違いとまどっています

【68582】Re:VBAフォームから入力文字と直接入力の...
お礼  金鮒魚 E-MAIL  - 11/3/27(日) 15:36 -

引用なし
パスワード
   ▼かみちゃん さん:

こんにちわ

失礼しました
EXCELLのVERSIONは Excel2000です

VBAでSORTのCODEを使ってSORTMETHODを xlPinYin 及び xlStroke で
所定のcell範囲をSORTしてみました

所定のcell範囲には3000位の手打ちのDATA 及び FORMからの入力
二種類のDATAが存在してまして違う位置にグループ化してしまう
現象を解決することが出来ませんでした

以上が試してみました概略です

お気を悪くされたのなら深く謝意を表します
ただ悪意ではなっかたことはご理解ください

お心遣い痛み入ります

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