エクセルで「#NAME?」を直すには?

解決


太阪  2004-08-28 01:18:24  No: 85289

お世話になっています。
ExcelVBAでマクロを使用しているのですが、
セルの内容が「=テスト」となっているために「#NAME?」になっているものを、
頭にシングルコーテーションを付けたいのですが、実行時にエラーが出てしまいます(頭の「=」はつけた状態で無いといけません)。

どなたか「#NAME?」のエラーを回避する方法を知っている方はいらっしゃいますか?

IEはv6.0。EXCEL2002/VBAを使用しています。
皆様の助言、よろしくお願い致します。


よし  2004-08-28 01:44:17  No: 85290

>頭にシングルコーテーションを付けたいのですが
でいいんじゃないでしょうか。

>実行時にエラーが出てしまいます
何のエラーですか?

問題は「「#NAME?」のエラーを回避する方法」じゃなくて
セルに"'=テスト"という文字列を代入できないことですよね?


太阪  2004-08-30 19:30:53  No: 85291

よし様、すみません、お返事遅れました。

>>頭にシングルコーテーションを付けたいのですが
>でいいんじゃないでしょうか。
セルの内容が「エラー 2029」になってしまっているために単純に「'」を付けるだけでは駄目でした。

>>実行時にエラーが出てしまいます
>何のエラーですか?
「実行時エラー '13':
型が一致しません。」です。

最終的に作りたいものは「#NAME?」のセルには、「'」を頭につける処理ですが、単純にセルに組み合わせるだけだと駄目のようです。


よし  2004-08-30 21:06:07  No: 85292

例えば下記のようなマクロがエラーになるということですか?

Sub Macro1()
    
    Worksheets("Sheet1").Cells(1, 1) = "'=テスト"

End Sub

当方の環境では正常に実行できますが。
WinXP,Excel2000


太阪  2004-08-30 21:31:47  No: 85293

よし様、御返事ありがとうございます。

>例えば下記のようなマクロがエラーになるということですか?
問題なく実行できました。

すみません、説明が足りませんでした。
例えばA列の1〜10までのセルに内容が含まれているとして、
一つずつチェックして、セルの内容が「#NAME?」ならば「'」を付ける処理が作りたいのです。
今の作っている段階では、

Sub Macro1()
    
    Dim i As Integer
    
    For i = 1 To 10
        Cells(i, 1).Select
        If IsError(ActiveCell.Value) Then
            errval = ActiveCell.Value
            Select Case errval
                Case CVErr(xlErrName)
                    MsgBox "#NAME? エラー"
                Case Else
                    MsgBox "他のエラーです。"
            End Select
        End If
    Next
    
End Sub

と、いうチェック段階の処理です。
最終的に「MsgBox "#NAME? エラー"」の部分を「頭に'をつける処理」に変更したいのです。


よし  2004-08-30 22:05:21  No: 85294

なるほど、ではMsgBox "#NAME? エラー"の下に
ActiveCell.FormuraR1C1="'"+ActiveCell.FormuraR1C1
を入れてみてはどうでしょう。


太阪  2004-08-30 22:14:36  No: 85295

よし様、素早い返答ありがとうございます。

>なるほど、ではMsgBox "#NAME? エラー"の下に
>ActiveCell.FormuraR1C1="'"+ActiveCell.FormuraR1C1
>を入れてみてはどうでしょう。

早速試してみたところ、できました!
でも「FormuraR1C1」じゃなくて、「FormulaR1C1」ですね。
一瞬エラーが出て焦りました。

よし様、素早い返答と的確なアドバイス、本当にありがとうございました。
これにて解決とさせていただきます。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加