[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『COUNTA関数がコンパイルエラーになってしまう』(三輪車)
幼稚園レベルの質問をさせていただきます。excel2007 windows8.1
セルC1の値と同名のシートが同一ブックにあったら回避。
さらにセルJ7かJ11に値が入っているか、セル範囲J8からJ11に
値がなければ回避、という下記のコードを書いたのですが、
If WorksheetFunction 以下の2行が赤くなりコンパイルエラーと出ます。 いくらやっても直せないのですが、よろしくお願いします。
Private Sub Worksheet_Deactivate()
Dim sh As Worksheet For Each sh In Worksheets
If sh.Name = ActiveSheet.Range("C1").Value Then Exit Sub Next sh
If WorksheetFunction.CountA(Range(”J7”,”J11”))>0 Or _ WorksheetFunction.CountA (Range("J8:J10")) < 1 Then Exit Sub
'目次シートにコピーするコード
End Sub
< 使用 Excel:Excel2007、使用 OS:Windows8 >
ただ、エラーにはなりませんが Range("J7", "J11") は Range("J7, J11") の間違いではありませんか。 違いがわかりますか。
(マナ) 2015/04/12(日) 15:33
Range("J7", "J11")はセル範囲で、2つのセルを指定するのはRange("J7, J11")が正しいのですね。
ただ、式を正しく直しても、If WorksheetFunction 以下の2行は赤いままなので
途方に暮れました。
(三輪車) 2015/04/12(日) 15:44
If WorksheetFunction.CountA(Range("J7,J11")) > 0 Or _ WorksheetFunction.CountA(Range("J8:J10")) < 1 Then Exit Sub
(マナ) 2015/04/12(日) 15:49
コピペしましたら赤が消えました、大変ありがとうございます。
なぜ、私のでは駄目なのか不思議です。
よちよち歩きのレベルだから、VBAがますます難しく感じてしまいます。
(三輪車) 2015/04/12(日) 15:56
なぜ"や:、括弧が全角になっているのですかね。コピペしたんじゃないんですか?
↓ If WorksheetFunction.CountA(Range(”J7”,”J11”))>0 Or _ WorksheetFunction.CountA (Range("J8:J10")) < 1 Then Exit Sub ↑ (se_9) 2015/04/12(日) 16:14
そうなんですよね。 ” や ) や : が全角。 ただ、xl2007環境ではどうなのか確認できませんが、xl2010やxl2013 では、コードペインで ” や ) を打ち込んでも Enterすれば 半角の " や ) に自動的に変換されます。
また、アップされている全角のコードイメージをコピペでコードペインに貼り付けても、半角に自動変換されます。
ですから、(三輪車)さんが、このコードを、どこから、どのように、掲示板に貼り付けたのかがわかりません。
xl2007 では コードペインで 全角の ”や )を入力すると、そのままの形で記述されるのでしょうかね?
(β) 2015/04/12(日) 16:20
β 様
ご指摘や親切なアドバイスありがとうございました。VBEに直接キーボードから
打ち込んだものです。またひとつマナーを身に着けました。
全角だと駄目なのですね。常識をわきまえていませんもので、皆様同様、
EXCEL自身も変な所有者だと驚いていると思います。
(三輪車) 2015/04/12(日) 16:34
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.