-PR-
  • すぐに回答を!
  • 2007-05-23 11:38:59
  • 質問No.3023404
解決
済み

「定数式が必要です。」って何のこと?

  • 閲覧数6145
  • ありがとう数11
  • 気になる数0
  • 回答数5
  • コメント数0
hatsuzo

お礼率 83% (120/144)

ExcelVBAで作成したマクロでデータ抽出を行なっていたのですが、
数日前に動作していたマクロが、突然に、
「定数式が必要です」というエラーが出てきて動かなくなりました。
VBAの仕様が変わったのでしょうか?

★エラーの発生したモジュール
Option Explicit
Dim MailCc As String
Sub Mailer()
(中略)
MailTo = Cells(RW_TO, 2).Text ' 宛先
→ MailCc = Cells(RW_CC, 2).Text ' CC
(以下略)

★同一プロジェクトの別モジュール
Global Const RW_CC = 18
  • 回答数5
  • 気になる数0
  • みんなの回答(全5件)

    質問者が選んだベストアンサー

    • 2007-05-23 19:06:12
    • 回答No.5
    chibita_papa レベル11

    ベストアンサー率 60% (127/209)

    NO.2です
    先程ので解決と思ったのですが・・

    以前、原因不明でマクロが動かなくなったとき以下の方法で
    直ったことがあります。
    試してみてください。

    新規ワークブックを作成
    ワークシートを全選択します(行と列の間の四角いところをクリック)
    ワークシートを新規ワークブックに丸ごとコピーする。
    ワークシートが複数ある時は繰り返し

    モジュール等を全て新ワークブックへコピー
    プロジェクトエクスプローラーでドラッグでも可(たぶん)
    参照設定をあわせる
    ' Microsoft CDO for Windows 2000 Library
    ' Microsoft ActiveX Data Objects 2.7 Library
    ' Microsoft Scripting Runtime
    でどうでしょうか。
    以前私は直ったことがあります。

    ところで、
    ' Microsoft ActiveX Data Objects 2.7 Library

    ' Microsoft ActiveX Data Objects 2.8 Library
    が最新のようですね。
    こちらに変えたらいきなり直ったりして?
    関係ないと思いますが
    お礼コメント
    hatsuzo

    お礼率 83% (120/144)

    どうもアドバイス有難うございました。

    ' Microsoft ActiveX Data Objects 2.7 Library を
    ' Microsoft ActiveX Data Objects 2.8 Library
    に変えたら直りました。

    WindowsUpdateの影響かもしれないですね。
    このようなことがあるかと思うと、正直、VBAを定型業務に使ってよいものか迷ってしまいます。

    助かりました。感謝いたします。
    投稿日時 - 2007-05-24 09:18:33
    • ありがとう数0
    -PR-
    -PR-

    その他の回答 (全4件)

    • 2007-05-23 12:35:15
    • 回答No.2
    chibita_papa レベル11

    ベストアンサー率 60% (127/209)

    → MailCc = Cells(RW_CC, 2).Text ' CC ここでエラーと言う事でしょうか。 だとすれば、 MailCc = Cells(RW_CC, 2).Text の1つ上に Debug.print RW_CC として イミディエトウインドウには 何が出力されますか。 18のはずですが違う数字例えば0など・・ ...続きを読む
    → MailCc = Cells(RW_CC, 2).Text ' CC
    ここでエラーと言う事でしょうか。

    だとすれば、
    MailCc = Cells(RW_CC, 2).Text
    の1つ上に
    Debug.print RW_CC
    として
    イミディエトウインドウには
    何が出力されますか。
    18のはずですが違う数字例えば0など・・
    お礼コメント
    hatsuzo

    お礼率 83% (120/144)

    有難うございます。

    コンパイルエラーなので、
    実行できないため、イミディエトウインドウの操作はできません。
    投稿日時 - 2007-05-23 13:43:26
    • ありがとう数0
    • 2007-05-23 14:53:05
    • 回答No.4
    chibita_papa レベル11

    ベストアンサー率 60% (127/209)

    NO2です。 では、参照設定で不足しているものはないですか。 例えば、アドインとか 最近システム変更して、DLLが変わった、削除したとか ...続きを読む
    NO2です。

    では、参照設定で不足しているものはないですか。
    例えば、アドインとか
    最近システム変更して、DLLが変わった、削除したとか
    お礼コメント
    hatsuzo

    お礼率 83% (120/144)

    有難うございます。

    参照設定したDLLは一応コメントに記録してあるのですが、
    特に外れているわけではないです。
    ' Microsoft CDO for Windows 2000 Library
    ' Microsoft ActiveX Data Objects 2.7 Library
    ' Microsoft Scripting Runtime
    WindowsUPDATEはしていますが、勝手にDLLまで置き換えられることもあるのでしょうか?
    投稿日時 - 2007-05-23 15:27:23
    • ありがとう数0
    • 2007-05-23 11:45:24
    • 回答No.1
    akina_line レベル14

    ベストアンサー率 34% (1124/3287)

    こんにちは。  >→ MailCc = Cells(RW_CC, 2).Text ' CC   ↑ここにある矢印はどういう意味ですか? では。 ...続きを読む
    こんにちは。

     >→ MailCc = Cells(RW_CC, 2).Text ' CC
      ↑ここにある矢印はどういう意味ですか?

    では。
    お礼コメント
    hatsuzo

    お礼率 83% (120/144)

    失礼しました。
    ここでエラー発生という意味です。
    投稿日時 - 2007-05-23 13:39:27
    • ありがとう数0
    • 2007-05-23 13:50:54
    • 回答No.3
    akina_line レベル14

    ベストアンサー率 34% (1124/3287)

    こんにちは、#1です。  エラーの発生した行をコメントにして、#2さんの言われた方法を実行するとどうなりますか。 では。 ...続きを読む
    こんにちは、#1です。

     エラーの発生した行をコメントにして、#2さんの言われた方法を実行するとどうなりますか。

    では。
    お礼コメント
    hatsuzo

    お礼率 83% (120/144)

    お返事有難うございます。

    ウォッチ式にRW_CCという定数を追加して、
    そのステップで止めてみましたが、
    「ウォッチ式が不正です」ということで見ることもできません。
    投稿日時 - 2007-05-23 14:25:32
    • ありがとう数0
    • 回答数5
    • 気になる数0
    • ありがとう数6
    • ありがとう
    • なるほど、役に立ったなど
      感じた思いを「ありがとう」で
      伝えてください
    • 質問する
    • 専門家・企業を含めた、
      多くの人々が答えてくれます
    こんな書き方もあるよ!この情報は知ってる?あなたの知識を教えて!
    このQ&Aにはまだコメントがありません。
    あなたの思ったこと、知っていることをここにコメントしてみましょう。

    関連するQ&A

    -PR-
    -PR-

    その他の関連するQ&Aをキーワードで探す

    別のキーワードで再検索する
    -PR-
    -PR-
    -PR-

    特集


    -PR-

    ピックアップ

    -PR-
    ページ先頭へ