指定された範囲のセルが空白の場合にメッセージを返そうとしています。範囲を宣言した場合、すなわちVBA範囲内のセルが空白の場合のメッセージを返します。
Set OrderRng = [C1: C41]
それはうまく動作しますが、そのように宣言すると、
Set OrderRng = Range("c1:" & ActiveSheet.Range("c65536"). End(xlUp).Address).Select`
これは機能しません。
私は常に正しいセルをハイライト表示するので、2番目の引数の範囲は正しく宣言されています。
私のコード全体はこのように見えます。
> Sub BlankCell() Dim OrderRng As Range On Error Resume Next
>
> Set OrderRng = Range("c1:" & ActiveSheet.Range("c65536").End(xlUp).Address).Select
>
> ' Set OrderRng = [C1: C41] ' Rm'd for testing
>
> Set OrderRng = OrderRng.SpecialCells(xlCellTypeBlanks)
>
> If Err = 0 Then MsgBox "An Order ID is missing on one of your entries,
> please amend then try again" End If End Sub
私は間違っていると思いますが、それは明らかですが、私には分かりません。修正するには
感謝
あなたが得ているエラーを共有すると役に立ちます。この場合はおそらく "タイプミスマッチ" – JNevill
最後の行を見つけるために 'Actheet'や' Usedrange'を使用したり、セルをハードコードしたりしないでください。 [この](http://stackoverflow.com/questions/11169445/error-in-finding-last-used-cell-in-vba)を見たいかもしれません。 '.Select'の使用も避けてください。あなたは[この(http://stackoverflow.com/questions/10714251/how-to-avoid-using-select-in-excel-vba-macros) –