Excel VBA質問箱 IV

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

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


25211 / 76732 ←次へ | 前へ→

【56865】Re:取り消し線の引かれている文字だけ削除
回答  ハチ  - 08/7/9(水) 9:19 -

引用なし
パスワード
   ▼勉強中 さん:
>
>について、とりあえずそのセルの.Font.Strikethroughを判定するのを考えてみました(下記)。が、この場合セル内の文字の一部分だけに取り消し線が引かれているときはそのセルは「取り消し線が引かれていません」と判別されてしまいます。
>で、やはりCharactersで1文字ずつ判定するべきかと思ったのですが、それなら結局1文字ずつ見るので結局は一緒かと思い直しました。

問題へのアプローチの仕方が良くないと思います。

『全て引かれている』
『全て引かれていない』
『混在している』
この3パターンがあると解っているワケですよね?

コードを拝見すると2パターンの分岐になっています。
うまくいかなくて当然です。

3パターンで『何の値を返すのか?』を検証してみてはどうですか?
ヘルプを見れば、答えは書いてありますけどね^^

'イミディエイトの使い方は調べてください
Sub Test_Chk()
  Debug.Print ActiveCell.Font.Strikethrough
End Sub

【別案】
混在の場合に何の値を返すのか解らなくても、
『その他』という書き方で、うまくいくこともあります。

Sub Test_Sel()
  Select Case ActiveCell.Font.Strikethrough
    Case True
      MsgBox "全て消す"
    Case False
      MsgBox "処理の必要なし"
    Case Else
      MsgBox "1文字づつチェック"
  End Select
End Sub

4 hits

【56751】取り消し線の引かれている文字だけ削除 勉強中 08/7/3(木) 14:54 質問
【56752】Re:取り消し線の引かれている文字だけ削除 ハチ 08/7/3(木) 15:06 回答
【56756】Re:取り消し線の引かれている文字だけ削除 勉強中 08/7/3(木) 16:37 質問
【56763】Re:取り消し線の引かれている文字だけ削除 ハチ 08/7/3(木) 17:58 回答
【56855】Re:取り消し線の引かれている文字だけ削除 勉強中 08/7/8(火) 16:30 お礼
【56865】Re:取り消し線の引かれている文字だけ削除 ハチ 08/7/9(水) 9:19 回答
【56916】Re:取り消し線の引かれている文字だけ削除 勉強中 08/7/10(木) 15:36 お礼

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