Excel VBA 「subまたはfunctionが定義されていません。」の原因

備忘録

現役プログラマーではないけれど、ExcelVBAをちょこちょこ利用してルーティンワークの効率アップをしています。

たまに「subまたはfunctionが定義されていません。」が表示された時、まずはプロシージャ名の間違いを疑います。

がしかし、定義側とCall側で一致しているにもかかわらず、このエラーが出る場合があります。

これってコンパイルエラーですか?

sponsor




プロシージャ名の間違い以外にも有名な Office TANAKAさんのサイトでも詳しく説明されています。

 

実は、これら以外にも原因がありました。

私が経験したことですが、恐らく基本的な間違いだと思います。

 

それは、

ワークシートについているシートモジュール内に記述したプロシージャをイミディエイトウィンドウからDebug.Printで実行しようとしたからです。

標準モジュールに記述しないとダメなんですね。(汗)

基本は大事です。

 

EXCEL VBAで悩んでいる方!

VBAで悩んだりする時間はもったいないですよ。VBAが得意な人を見つけて委託した方が効率が良いと思います。

はじめて外注を探すのであれば、得意を生かして好きな時間に副業できる【ココナラ】をお勧めします。


次のいずれかに該当する場合は、安心してください、解決策がありますよ。

  • 業務実績が豊富な人に依頼したい
  • VBAを委託することに不慣れでも、柔軟に対応してくれる人に依頼したい
  • 素性のわからない人にはお願いしたくない
  • 最後までキチンと対応してくれる人に依頼したい

すべての条件に合う人を見つけるのは、正直なところ簡単ではありません。

 

では、どうやって条件に合う人を見つけるか?

こんなときは、委託したい人と受託したい人を結ぶビジネスマッチングサイト(案件案内系サイト)を利用するのが最も得策です。

簡単な流れは次のとおりです。

  1. あなたは、所定の申込フォームに依頼したい内容を書き込みます。(匿名可)
  2. 経験豊富なプログラマーがその内容を見て、それぞれ独自の見積り提案書を提示してきます。
  3. あなたは、提示された多くの見積り提案書を見て気に行った内容があれば、その見積り提案をしてきたプログラマーと商談を進めます。(複数の相談可)
  4. あなたとプログラマーが、契約するための条件(価格、作業範囲、納期、検収条件など)に双方とも納得できれば、委託の手続きを進めます。条件が合わなければ、無理に委託する必要はありません
  5. 正式に委託し、プログラマーは作業に着手します。
  6. 適時、報告などを受けるなどして、進捗管理をしながら納品されるのを待ちます。
  7. 納品されたら検収条件に基づき検収し、全てOKであれば支払処理を行います
  8. 支払処理が終われば、完了です。あなたは、納品物を正式に受け取る事ができます。

現在、数多くのビジネスマッチングサイト(案件案内系サイト)が存在します。

人材は豊富ながら、手数料などのせいで依頼額に割高感を感じるサイトもあります。そういった意味では、最初に適切なビジネスマッチングサイト(案件案内系サイト)を選んだ方が良いですね。

はじめて外注を探すのであれば、ココナラをお勧めします。あなたが得意ではないVBAを得意な人が有料で助けてくれるからです。(料金は500円~)

込み入ったプログラミングなど一定のスキルを必要とする作業の場合は、見積り提案を出してもらって納得した上で発注できますよ。
もちろん、利用料は無料です。

もし、利用方法などで不明点があれば、ココナラのサイト管理者に質問して簡単に解決できます。

そしてあなたは、VBAの苦労から解放されて、あなたしかできない別の業務に集中できることとなります。

わずかな予算で、開発のストレスがなくなるのは、ストレスがなくなった者でないとわからない幸福感かもしれませんが、ぜひあなたも味わってください。

タイトルとURLをコピーしました