3

多くのワークシートと多くのデータを含むExcelワークブックがあります。私のVBA機能の1つは次のとおりです。それは完全にうまく機能しています。

Function TextResult(Name As String) As String
  Select Case Name
    Case Is = "Text1"
      Name = "Result1"
    Case Is = "Text2"
      Name = "Result2"
    Case Is = "Text3"
      Name = "Result"
  End Select
End Function  

次に、モジュールの名前を変更するSubを追加しました。

Sub Whats_In_A_Name()
    ThisWorkbook.VBProject.VBComponents("Module1").name = "TextResult"
    ThisWorkbook.VBProject.VBComponents("Module2").name = "Name2"
End Sub

これはエラーを出しましたが、それ自体を含むすべての名前を変更しました。

しかし今、私は#NAMEを取得しますか?上記のように作成されたこれらのモジュールを使用するすべてのセルでエラーが発生するため、すべてのケースが機能します。そして、私にはこれを修正する方法がわかりません。誰かアイデア?

4

1 に答える 1

3

上記のように:

関数を保持するモジュールの正確な名前以外に、UDFに別の名前を使用してください。

于 2012-11-27T11:56:09.743 に答える