0

vba で IF AND THEN ステートメントを作成する必要があります。以下のコードを試してみましたが、エラーは発生しませんが、動作しません (つまり、マクロを実行しても何も起こりません):

Sub PrintAll()

  Dim BrokerCell As Range
  Dim Rng As Range
  Dim Wks As Worksheet

Set Wks = Worksheets("PRINT PAGE")

 If Range("$A$5").Value = "Company 1" Then
  Set Rng = ThisWorkbook.Names("Company1").RefersToRange
 ElseIf Range("$A$5").Value = "Company2" Then
  Set Rng = ThisWorkbook.Names("Company2").RefersToRange
 Else: Set Rng = ThisWorkbook.Names("Company3").RefersToRange
 End If

  For Each BrokerCell In Rng
    If BrokerCell <> "" AND "$Q$5" > "0" Then
       Wks.Range("$B$5").Value = BrokerCell.Text
       Wks.PrintOut
    End If
  Next BrokerCell

End Sub

マクロは、

 AND "$Q$5" > "0"

明らかに、私はここで何か間違ったことをしています。

4

1 に答える 1

2

あなたはおそらく次のことを意味します:

If BrokerCell <> "" And Range("$Q$5").Value > 0

リテラル文字列 "$Q$5" をリテラル文字列 "0" と比較しています。

于 2013-10-07T19:21:45.073 に答える