Excel VBA質問箱 IV

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

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


66984 / 76738 ←次へ | 前へ→

【14313】Re:セルの文字を変換させたいです
回答  ichinose  - 04/5/25(火) 20:23 -

引用なし
パスワード
   ▼kc さん:
こんばんは。
この投稿をする前にkcさんのご質問内容を再度、読み返してみましたが、
やっぱり、きっちりとは内容を把握できませんでした
(まあ、読解力がないのが自慢なので・・)。
ということを前提として・・・、

>お返事ありがとうございます。
>確かにセルの中身は
>Selection.NumberFormatLocal = ";;;""bad"""
>でかわりますがこのマクロを何回も走らなければなりませんので
>セルの中身をbadからまたkcに戻したいのですが
>どうしたらいいでしょうか?
この投稿を読んで「もしかしたら、勘違いされてるかも」と思いましたので
再度、例題を交えて・・・。

まず、新規ブックのアクティブシートのセルA1に予め
「kc」と入力しておいて下さい。
セルA1のみを対象にしてみましょう。

次に以下のコードを実行してみて下さい。
標準モジュールに
'====================================================
Sub test()
  With Range("a1")
   If .Value = "kc" Then
     .NumberFormatLocal = ";;;""bad"""
     End If
   End With
End Sub

前回の投稿と同様にセルA1は、「bad」と表示されていますよね?
でも、上のコードは書式によってセルの表示だけ「bad」に見えるように設定しているだけなんです。
中身の値は相変わらず「kc」なんです。

その証拠に以下のコードを実行してみて下さい。
同じく標準モジュールに
'================================================
Sub test2()
  MsgBox Range("a1").Value 'セルA1の値
  MsgBox Range("a1").Text 'セルA1の見かけの値
End Sub

いかがですか?
「kc」が表示され、次いで「bad」と表示されましたか?

よって、連続処理(どんな処理なのか??ですが)をする場合、
このValueプロパティを参照すれば「kc」という文字は
見かけ表示が「bad」であっても取得できるんです。


それでも一旦、「kc」という表示に戻したいのであれば、

'========================================================
Sub test3()
  Range("A1").NumberFormatLocal = "G/標準"
End Sub

で「kc」に戻るはずです。

こんな説明でいかがでしょうか?

0 hits

【14145】セルの文字を変換させたいです kc 04/5/21(金) 19:39 質問
【14146】Re:セルの文字を変換させたいです ichinose 04/5/21(金) 20:05 発言
【14280】Re:セルの文字を変換させたいです kc 04/5/25(火) 13:57 質問
【14313】Re:セルの文字を変換させたいです ichinose 04/5/25(火) 20:23 回答
【14351】ありがとうございました kc 04/5/26(水) 15:14 お礼

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