条件付き書式のためのVBAでの細胞の比較:は私がうまく動作するコードのこの塊を持って
Function sshProblem(rng As Range) As Boolean
Dim portStatus As String
portStatus = rng.Value
Dim deviceType As String
deviceType = Cells(Application.Caller.Row, 3).Value
Dim sshDevices As Variant
sshDevices = Array("linux", "vmw", "docker", "unix")
If StrComp(portStatus, "No") = 0 Then
sshProblem = Not IsError(Application.Match(deviceType, sshDevices, 0))
End If
End Function
今のコードは、拡張する必要があり、代わりにsshDevices、配列内の値を格納するのは、これらの値が存在する必要があります別のシートの列に、私は
sshDevices = Worksheets("Config sheet").Range("I2:I11").Value
にして
sshDevices = Array("linux", "vmw", "docker", "unix")
を交換しようとしました条件付き書式設定が機能しなくなったことを示します。どのようにしてセルの範囲から値を取り出し、それらを変数に挿入して比較することができますか?
に影響を与える
Option Base
の1ベース配列を持っているだろうことを通知します人々を働かせている。条件付き書式設定が行われていません。配列が正しくインポートされているかどうか、または比較に使用されたコードチャンクが配列タイプImと互換性があるかどうかわからない –あなたの投稿は、 'sshDevices'配列の値をハードコードではなく範囲から保存する方法でしたRange( "I2:I11")。Value')は、あなたがしなかったいくつかの条件付き書式設定を停止したので動作しませんでした( 'sshDevices = Worksheets(" Config Sheet "))についての情報を投稿してください。私の答えは、配列の範囲指定の仕方が "良い"ものとして機能しない理由を説明し、配列を元の 'Array(" linux "、" "vmw"、 "ドッカー"、 "unix") 'one。私はあなたの質問に答えたと思う – user3598756