2017-12-20 32 views
0

セルに入力可能な入力は、真または偽(真偽)です。ブール値がTrueに設定されている場合、私の目標はスタイルを変更することです。 セルの値の変更の範囲を変更します。

は、私は次のコード

Private Sub Worksheet_Change(ByVal Target As Range) 
    If Not Intersect(Target, Range("F2:F200")) Is Nothing Then 
     If Target Then 
      MYRange = """" & Replace(Target.Address, "$", "") & """" 
      Sheets("Ribs").Range(MYRange).Style.Name = "Good" 
     End If 
    End If 
End Sub 

を試みたが、私はそれは私が問題が何であるかを把握することはできませんSheets("Ribs").Range(MYRange).Style.Name = "Good"

ラインに起因する作業を取得することはできません。

+1

その行に何が問題なのですか。エラーがありますか?また、これは条件付き書式設定の仕事のように聞こえます。 –

+1

絶対参照を削除して何をしようとしていますか?どうして 'Target.Style.Name = Good'をしないのですか? – BruceWayne

+3

または 'Sheets(" Ribs ")。Range(Target.Address).Style =イベント・コードと異なるシートの場合は「Good」です。 – SJR

答えて

1

英語以外のExcelのコードを実行していて、.Styleまたは.LocalFormulaを使用している場合、Excelを他の言語に翻訳するとコードが少し破損する可能性があります。

かいつまんで、これを実行します。

Public Sub TestMe() 
    Dim st As Style 
    For Each st In ThisWorkbook.Styles 
     Debug.Print st.Name 
    Next st 
End Sub 

は、イミディエイトウィンドウに結果を見てみましょう。ドイツのExcelで、私はこのような結果を受け取ります:

Ergebnis 
Erklärender Text 
Gut 
Comma 
Neutral 
Notiz 
Percent 

ご覧のとおり、私はスタイルとして「良い」を持っていません。私はそれを参照したい場合は、 "ガット"を使用する必要があります。

関連する問題