No.4ベストアンサー
- 回答日時:
#3ですが・・・
先に提示したコードで、例えば、色の番号を入力するとき、万が一間違って 128- など"-" が後に付加
されると実行エラーになりますので、下記のコードと差し替えてください。
使用例は、例えば、B1に0、B2に10 を入れ、この2つを選択して下にフィルドラッグしてください。
Public Fg As Boolean
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Rng As Range
Set Target = Intersect(Range("A1:IV500"), Target)
If Target Is Nothing Then Exit Sub
If Selection.Rows.Count > 500 Then Exit Sub
For Each Rng In Target
If Fg = False Then setplt
If IsNumeric(Rng.Text) Then
Rng.Interior.Color = RGB(Abs(Rng * 1), Abs(Rng * 1), Abs(Rng * 1))
ElseIf IsEmpty(Rng) Then
Rng.Interior.ColorIndex = xlNone
End If
Next Rng
End Sub
Sub setplt()
Dim N As Integer
Dim C As Integer
For N = 1 To 56
C = Int(255 / 55 * (N - 1))
ActiveWorkbook.Colors(N) = RGB(C, C, C)
Next N
Fg = True
End Sub
お礼が大変遅くなり、申し訳ありません。ご回答、ありがとうございました。
256段階での表示、確認しました。使用させていただきます。
また何かありましたら、よろしくお願いします。
No.3
- 回答日時:
次の手順で操作すると、ご希望の機能になると思います。
・使用しているシートのシート名タブを右クリックして「コードの表示」を指定します。
・開いたコードウィンドウに下記コードをコピーして貼り付けます。
・Alt+ Q (または、右上隅の×)でウィンドウを閉じ、シートに戻ります。
・メニューから[ツール]-->[マクロ]-->[セキュリティ]で「セキュリティレベル」を
「中」にして[OK]します。
・以上で設定完了です。
500行より上の任意のセルに0~255の数値を入力してみてください。
相応のコントラストで塗り潰されます。
シート全体とか、行を選択し、 DEL したときは、色を残し、数値だけをクリアします。
小範囲を選択し、 DEL した場合は、その範囲だけを「塗り潰し無し」に戻します。
多分、こういうことではないかと思いますが、如何でしょうか。
Public Fg As Boolean
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Rng As Range
Set Target = Intersect(Range("A1:IV500"), Target)
If Target Is Nothing Then Exit Sub
If Selection.Rows.Count > 500 Then Exit Sub
For Each Rng In Target
If Fg = False Then setplt
If IsNumeric(Rng.Text) Then
Rng.Interior.Color = RGB(Rng.Value, Rng.Value, Rng.Value)
ElseIf IsEmpty(Rng) Then
Rng.Interior.ColorIndex = xlNone
End If
Next Rng
End Sub
Sub setplt()
Dim N As Integer
Dim C As Integer
For N = 1 To 56
C = Int(255 / 55 * (N - 1))
ActiveWorkbook.Colors(N) = RGB(C, C, C)
Next N
Fg = True
End Sub
No.2
- 回答日時:
>白黒56段階での表示は可能なのでしょうか?
マクロを使えば可能です。
こんなんでヒントになりますか?
(カラーパレットを変えておく必要があると思います)
#ただ、横500列はEXCELでは無理ですよ。
#256列しかありません。
Sub test()
For i = 1 To 56
ActiveWorkbook.Colors(i) = RGB(i + 99, i + 99, i + 99)
Cells(i, 1).Interior.ColorIndex = i
Next
End Sub
お礼が大変遅くなり、申し訳ありません。
ご回答、ありがとうございました。
56段階で表示できました。また、列に関するご指摘もありがとうございました。
また何かありましたら、よろしくお願いします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) エクセルで”入力シート”の文字書式の変更を”出力シート”で同じ文字書式で印刷したいです。VBA希望 4 2023/04/24 11:07
- Excel(エクセル) Excel 特定セルの数値を参照したセルの0表示が空白にならないのはどうしてか? 3 2022/04/28 22:23
- Word(ワード) Wordの表中の文字を選択した時の白黒反転の違い 1 2023/04/25 12:13
- Excel(エクセル) 条件に合った数値の合計を表示させたい関数と条件指定の方法 3 2023/05/13 16:07
- その他(Microsoft Office) Excel2003,2007の作業です 2 2023/05/17 09:58
- Excel(エクセル) エクセルの条件付き書式で*を使いたい 4 2022/05/13 16:49
- Excel(エクセル) エクセルの祝日に色が反映しない 4 2022/05/18 09:58
- Excel(エクセル) Excelの文字列を数字に変換する方法について 6 2023/07/31 21:18
- Excel(エクセル) Excelで数式をそのままコピーしたい どうすればいいですか? 4 2022/09/16 02:16
- Excel(エクセル) エクセルの数式で教えてください。 1 2022/07/08 13:46
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Excelの「0」だけ非表示、小数...
-
日付が未入力の際はゼロか、空...
-
エクセルで1月0日と表示される!!
-
エクセルで条件に一致したセル...
-
Rangeメソッドは失敗しました。...
-
(Excel)あるセルに文字を入力...
-
複数シートの同じセル内容を1シ...
-
別シートのセルを絶対参照にする
-
Excelシートの保護時にデータの...
-
エクセルの文字
-
Excelにて、カタカナだけのセル...
-
Excelで複数シートの選択セルを...
-
エクセルで20万行あるシート...
-
エクセルで、加筆修正したセル...
-
エクセルのルビがついたセルを...
-
エクセルで別シートからの最大...
-
シート参照で変数を使いたい(EX...
-
EXCELマクロで、シート間でのコ...
-
Aというブックの1というシート...
-
excelでハイパーリンクになって...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excelの「0」だけ非表示、小数...
-
日付が未入力の際はゼロか、空...
-
エクセルで条件に一致したセル...
-
エクセルで1月0日と表示される!!
-
(Excel)あるセルに文字を入力...
-
別シートのセルを絶対参照にする
-
Rangeメソッドは失敗しました。...
-
Excelシートの保護時にデータの...
-
複数シートの同じセル内容を1シ...
-
エクセルで、加筆修正したセル...
-
シート参照で変数を使いたい(EX...
-
エクセルで複写のように自動入...
-
Excelで複数シートの選択セルを...
-
INDIRECTを使わず excelで複数...
-
ExcelでTODAY関数を更新させな...
-
式の説明をお願いします。
-
excelでハイパーリンクになって...
-
エクセルのルビがついたセルを...
-
Excelでスクロールすると文字が...
-
エクセル ハイパーリンクで画像...
おすすめ情報