• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:ソースの書き換えに挑戦中: 「インデックスが有効範囲にありません」 でお手上げ)

ソースの書き換えに挑戦中:「インデックスが有効範囲にありません」でお手上げ

このQ&Aのポイント
  • このQ&Aサイトで「Kaplan-Meyer生存分析に便利なソフトを教えて」と質問したshuu_01が、VisualBasicのソースを書き換える挑戦につまずいています。
  • 実行時エラーが発生し、インデックスが有効範囲にないことが原因です。
  • 以前のソースコードとの違いがわからず、解決方法に困っています。

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

  • ベストアンサー
  • popesyu
  • ベストアンサー率36% (1782/4883)
回答No.2

dmの件にあわせてtも動的配列なのに、redimで初期化が行われていません。 この辺のサイトを参考に配列の基本を確認しましょう。 http://www.asahi-net.or.jp/~ef2o-inue/vba_k/sub04_070_07.html ただしその辺の矛盾をなくしたとしてもそのコードではまともに動かないでしょう。とりあえずその部分を読んだだけでは意図は何となく分かりますが、作り直す必要があるかと思います。 こちらを参考に。 配列を使ったセル処理の参考 http://www.eurus.dti.ne.jp/~yoneyama/Excel/vba/vba_array.html

shuu_01
質問者

お礼

popesyu さん、完璧な回答ありがとうございます。 ReDim で初期化をして、そのエラーは出なくなりました。 そして popesyu さんのご明察のとおり、次のエラーにぶちあたりましたが、教えてくださったサイトに答えがありそうなので一生懸命勉強します。本当にありがとう(^_^)v

その他の回答 (1)

  • okormazd
  • ベストアンサー率50% (1224/2412)
回答No.1

Dim dm As Range dmは配列じゃないし、 dm(i) は配列だし、 どこが違うのだろう。

shuu_01
質問者

お礼

okormazd さん、とても早い回答ありがとう。

関連するQ&A

専門家に質問してみよう