[リストへもどる]
一括表示

投稿時間:2003/08/20(Wed) 15:15
投稿者名:おじん
Eメール:
URL :
タイトル:
エクセルを利用してふりがな取得
「ふり仮名取得」の必要に迫られていて、msime.tlbを使用する
方法を試みているのですが、安定性がなく思案していたところ、ここに、
別掲載の「Sample 020(標記)」があることを見つけ、それを
コピーし実行したのですがうまく変換されません。
テストでは、「漢字Text2→ふりがなText1」。
また、「空白を考慮しない〜」では、(実行時エラー1004)、
「アプリケーション定義またはオブジェクト定義エラー」になります。
Sampleを使用する前に何か前準備する必要があるのでしょうか。

テスト環境は、Win98、Excel2000、Libraryは9.0
VBは6.0(SP)です。

投稿時間:2003/08/20(Wed) 16:09
投稿者名:花ちゃん
Eメール:
URL :
タイトル:
Re: エクセルを利用してふりがな取得
> また、「空白を考慮しない〜」では、(実行時エラー1004)、
> 「アプリケーション定義またはオブジェクト定義エラー」になります。
> Sampleを使用する前に何か前準備する必要があるのでしょうか。

こちらの方は何もせずとも取得できます(参照設定も不必要)
Private Sub Command1_Click()
    Debug.Print CreateObject("Excel.Application").GetPhonetic("山田花子")
End Sub

お使いのExcelでマクロを使用しているとか?何か特別な設定をしておられませんか?
正確なエラーメッセージをキーワードにGoogleで検索して見て下さい。
実行時エラー1004は色々要因があるようですが、今までそのような質問は
なかったように思います。
検索した中に下記のようなものもありました。

「実行時エラー1004 アプリケーション定義またはオブジェクト定義エラーです」は
ヘルプファイルが壊れて(?)て内容が読めないんです(T_T)

[うまく変換されません]はどのようになるのでしょうか?
エラーは発生しているのでしょうか?

Excelを再インストールすれば直るとは思うのですが。
他の機械等がありましたら、そちらで試して頂くと何か解るかも知れません。
又、今までVBからExcelを操作された事はあるのでしょうか?
新たにOSを立ち上げ直してからでも同じ状態でしょうか?

Excelを単独で使用した場合は何も問題ないのでしょうか?

投稿時間:2003/08/20(Wed) 17:46
投稿者名:おじん
Eメール:
URL :
タイトル:
Re^2: エクセルを利用してふりがな取得
早速ありがとうございます。

> こちらの方は何もせずとも取得できます(参照設定も不必要)
> Private Sub Command1_Click()
>     Debug.Print CreateObject("Excel.Application").GetPhonetic("山田花子")
> End Sub
参照設定の有無に関係なく、やはり同じエラーです。(1004)。

> お使いのExcelでマクロを使用しているとか?何か特別な設定をしておられませんか?
アドバイスの意味が理解できません。このテストをするときはExcelを立ち上げて
おかないといけないのでしょうか?
マクロを使ったExcelファイルはマシンには存在しますが、、、。

> [うまく変換されません]はどのようになるのでしょうか?
> エラーは発生しているのでしょうか?
Text2にセットした「文字(漢字)」がそのままText1に表示されます。
エラーは発生しません。

> Excelを再インストールすれば直るとは思うのですが。
> 他の機械等がありましたら、そちらで試して頂くと何か解るかも知れません。
改めての機会にテストします(今は自宅外のマシンを使用)。ちなみに、
現在休眠中の手元にある、Win95、Excel97のマシンでは、
「オブジェクトは、このプロパディまたはメソッドをサポートしていません」
とエラーになりました(上記の例)。

> 又、今までVBからExcelを操作された事はあるのでしょうか?
Sampleにある、「VBからエクセルを操作」を実行したことはあります。
勿論、正常にテストはできました。

> 新たにOSを立ち上げ直してからでも同じ状態でしょうか?
はい!!

> Excelを単独で使用した場合は何も問題ないのでしょうか?
単独では何ら問題はありません。

心当たりがある訳ではありませんが、私のマシンだけの問題のようです。
何か悪いムシでも住んでいるのでしょう。
色々とご迷惑をおかけしました。ありがとうございました。

投稿時間:2003/08/20(Wed) 18:04
投稿者名:花ちゃん
Eメール:
URL :
タイトル:
Re^3: エクセルを利用してふりがな取得
> > Excelを単独で使用した場合は何も問題ないのでしょうか?
> 単独では何ら問題はありません。

クドイようですが、Excel単独使用時 ふりがな は問題なく取得できるのでしょうか?

>Text2にセットした「文字(漢字)」がそのままText1に表示されます。
>エラーは発生しません。

この時に On Error Resume Next はコメントアウト されておられますか?

投稿時間:2003/08/20(Wed) 19:50
投稿者名:おじん
URL :
タイトル:
Re^4: エクセルを利用してふりがな取得(解決)
今、自宅のマシンです。ほぼ同等環境です。

CerateObject〜....のコード例、正しく実行できました。エンドユ
ーザがExcelを使用しているかどうか不確定なのでこの方法を採用しようと思っ
ています。また、他の方法も同様正しく変換できました。
まだ、1バイト系の文字が混じっているとき、漢字辞書のことなど、解決しなければ
ならないことがありますが、一歩前進できたことを非常にうれしく思っています。
ありがとうございました。

> クドイようですが、Excel単独使用時 ふりがな は問題なく取得できるのでしょうか?
Excel単独での使用、、、を勘違いしていました。表計算等での「単独使用」のこと
と理解していました。かけだしモノゆえのこととご寛容ください。

> この時に On Error Resume Next はコメントアウト されておられますか?
コピー&ペーストした”つもり”ですが、よく確認していませんでした。

投稿時間:2003/08/21(Thu) 10:28
投稿者名:花ちゃん
Eメール:
URL :
タイトル:
Re^5: エクセルを利用してふりがな取得(解決)
> エンドユーザがExcelを使用しているかどうか不確定なので
>この方法を採用しようと思っています。

どちらもExcelは必要です。


> 「ふり仮名取得」の必要に迫られていて、msime.tlbを使用する
> 方法を試みているのですが、安定性がなく

安定性がないって、どこか問題があるのでしょうか?
私が試した限りでは、問題がないようですが?

APIを使って よみがなの候補すべて取得する方法もありますが。

投稿時間:2003/08/22(Fri) 05:18
投稿者名:おじん
URL :
タイトル:
Re^6: エクセルを利用してふりがな取得(解決)
他のサイトで知ったサンプルを元に、
あらかじめ読み込まれたテキスト(RichTextBox1)を変換文字をマウスで指定して、
その「漢字混じりの文字列」を「ひらがな変換」することをしようとしています。
変換後の文字はText1に表示しています。

Private Sub RichTextBox1_MouseUp( _
        Button As Integer, Shift As Integer, _
        X As Single, y As Single)
'  
    Dim selTxt$  
    selTxt = RichTextBox1.SelText     '選択された文字
    RichTextBox1.SelColor = vbRed     '色を付ける

    Dim IME98 As New MSIMEJPN
    Dim MyIME As IFELanguage
    
    On Error GoTo ErrorTrap

    Set MyIME = IME98
    MyIME.Open
    Text1 = MyIME.GetPhonetic(selTxt,1,-1)
    MyIME.Close
    Set MyIME = Nothing
    Set IME98 = Nothing
    Exit Sub
ErrorTrap:
    Msgbox "...error......?" & Hex(Err.Number) & Err.Source

End Sub

不安定とは、上記操作を何度か繰り返していると、「オートメーションエラー」に
なります。10数回エラーにならずに正常に変換されることもあります。
この件はすでに「そのサンプルのあったサイト」でアドバイスをいただき、
「MSIME.tblとMSE-IEのVersionを調べてみるように」とのことです。
しかし残念ですが調査方法もわからずじまいです。

> APIを使って よみがなの候補すべて取得する方法もありますが。
仕様が決定してはいないのですが、今のところ「候補すべて取得する」方法は
少し効率が悪いと考えています。

投稿時間:2003/08/22(Fri) 08:10
投稿者名:花ちゃん
Eメール:
URL :
タイトル:
Re^7: エクセルを利用してふりがな
> > APIを使って よみがなの候補すべて取得する方法もありますが。
> 仕様が決定してはいないのですが、今のところ「候補すべて取得する」方法は
> 少し効率が悪いと考えています。

いいえ、どちらでもできます。

一度下記サンプルを試して見て下さい。
 http://www.psytec.co.jp/tips/0104/

投稿時間:2003/08/22(Fri) 09:08
投稿者名:おじん
Eメール:
URL :
タイトル:
Re^8: エクセルを利用してふりがな
> 一度下記サンプルを試して見て下さい。
>  http://www.psytec.co.jp/tips/0104/
ありがとうございました。
実は昨日別件でサイトめぐりをしていて偶然これを見つけました。
手持ちのパソコン(3セット)で、GetPhonetic〜などが
”動かない(正常に変換されない)”パソコンも正しく変換できました
(辞書の所為だと思うのですが”誤訳”はありましたが)。
仮名漢字変換が100%でないと同様、その逆もしかりです。しかし
「文中から文字列を抽出し、それを用紙に書き出し、パンチ業者に外注。
そしてデータをソーティングして索引を作成しています」
この作業を思うと、部分誤変換の文字を修正することはそれほどのこと
ではありません。経費的に見ても”外注費”は馬鹿になりません(@¥2)。
文字データが「一太郎」の場合はどうするかなど、敷居の高い問題があります。
その時は厚かましくも、よろしくお願いいたします。
ありがどうございました。