Excel VBA質問箱 IV

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

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


11795 / 13646 ツリー ←次へ | 前へ→

【14086】セルの桁数について poppy 04/5/20(木) 17:41 質問[未読]
【14087】Re:セルの桁数について ちゃっぴ 04/5/20(木) 17:49 回答[未読]
【14093】Re:セルの桁数について でん 04/5/20(木) 19:25 回答[未読]
【14116】Re:セルの桁数について poppy 04/5/21(金) 0:23 質問[未読]
【14117】Re:セルの桁数について ちゃっぴ 04/5/21(金) 0:33 回答[未読]
【14118】Re:セルの桁数について poppy 04/5/21(金) 3:12 お礼[未読]

【14086】セルの桁数について
質問  poppy  - 04/5/20(木) 17:41 -

引用なし
パスワード
   セル上の数字を丸めるとき、round関数をつかっているものと、
セルの書式を設定し、見かけ上桁数をしぼっているものが混在しています。
書式を設定し見かけ上桁数をしぼっているセルに色をつけたいのですが
どのようなマクロを書けば良いでしょうか?
どなたか、よろしくお願いします。

【14087】Re:セルの桁数について
回答  ちゃっぴ E-MAIL  - 04/5/20(木) 17:49 -

引用なし
パスワード
   >書式を設定し見かけ上桁数をしぼっているセルに色をつけたいのですが
>どのようなマクロを書けば良いでしょうか?

数式が入っているセルは

SpecialCells(xlCellTypeFormulas)

で取得できます。

後はヘルプを見るなり自分で考えましょう!

【14093】Re:セルの桁数について
回答  でん  - 04/5/20(木) 19:25 -

引用なし
パスワード
   >セル上の数字を丸めるとき、round関数をつかっているものと、
>セルの書式を設定し、見かけ上桁数をしぼっているものが混在しています。

マクロが良いのですか?
条件付き書式で出来ますよ?
数式で、対象セル値と対象セルのround値を比べればよいです。

駄目でしょうか?

【14116】Re:セルの桁数について
質問  poppy  - 04/5/21(金) 0:23 -

引用なし
パスワード
   ちゃっぴさん、でん さん ありがとうございます。
説明不足で申し訳ありません。

round関数を使っているセルと書式で見かけ上桁数をしぼっているセルが
1つのシートにごちゃごちゃに混在していて、更にそういうシートがたくさん
あるのです。
修正するにもたいへんなので、とりあえず、実際の数字と見かけ上の数字が
違っているセルを知りたいのです。
(多量なのでマクロが良いかなと勝手に思ってます。)

よろしくお願いします。

【14117】Re:セルの桁数について
回答  ちゃっぴ E-MAIL  - 04/5/21(金) 0:33 -

引用なし
パスワード
   勘違いしてました。

表示形式が設定されているセルは
SpecialCells(xlCellTypeSameFormatConditions)
で取得できます。

ちなみにpoppyさんはVBAをどの程度できますか?

上のことをヘルプで調べてわからないようであれば、
一度VBAをきちんと勉強なさることをお勧めします。

WEB上にその手のサイトたくさんありますよ〜

【14118】Re:セルの桁数について
お礼  poppy  - 04/5/21(金) 3:12 -

引用なし
パスワード
   ちゃっぴ さん ご助言ありがとうございました。

いろいろ試してみて結局以下のように落ち着きました。
うまくいったのでとりあえず良い事にしました。また改めて考えてみます。


Sub NumCheck()

  For Each s In Sheets
    s.Activate
    Range("A1").Select
    Range(Selection, ActiveCell.SpecialCells(xlLastCell)).Select

    For Each c In Selection.Cells
      If c.Value <> "" And c.NumberFormat <> "General" Then
        If IsNumeric(c.Value) = True Then
          If IsNumeric(c.Text) = True Then
            w = CDec(c.Text)
            If w - c.Value <> 0 Then
              c.Interior.ColorIndex = 32
            End If
          Else
            c.Interior.ColorIndex = 32
          End If
        End If
      End If
    Next
  Next
End Sub

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