0

これをシートレベルで使用できます...

=SUBSTITUTE(PROPER(SUBSTITUTE(A1,"'", "qx")), "qx", "'")

そして、これをモジュールレベルで使用できます..

ActiveCell.Value = Application.WorksheetFunction.Proper(ActiveCell.Value)

しかし、これをモジュールレベルで機能させることはできないようです...

ActiveCell.Value = Application.WorksheetFunction.Substitute(Proper(Substitute(ActiveCell.Value, "'", "qx")), "qx", "'")

「サブルーチンまたは関数が定義されていません」というエラーが表示されます。

私はこれに長い間苦労してきたので、試したさまざまな変種のすべてを見失ってしまいました。新鮮な目と関数の入れ子のノウハウを実際に使用できました。これは私を夢中にさせています。

(ちなみに、これは既存のセル値を適切なケースに変更し、アポストロフィに続く文字を大文字にするという適切な関数の癖を修正することを目的としています)

4

1 に答える 1

2

Application.WorksheetFunction オブジェクトを呼び出すたびに参照する必要があります。それ以外の場合は、メソッドを認識しないためです。

ActiveCell.Value = Application.WorksheetFunction.Substitute(Application.WorksheetFunction.Proper(Application.WorksheetFunction.Substitute(ActiveCell.Value, "'", "qx")), "qx", "'")
于 2013-10-31T22:44:23.570 に答える