質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
87.20%
VBA

VBAはオブジェクト指向プログラミング言語のひとつで、マクロを作成によりExcelなどのOffice業務を自動化することができます。

解決済

VBA 実行時エラー ’1004’ アプリケーション定義またはオブジェクト定義のエラーです

1004
1004

総合スコア74

VBA

VBAはオブジェクト指向プログラミング言語のひとつで、マクロを作成によりExcelなどのOffice業務を自動化することができます。

3回答

0評価

1クリップ

107953閲覧

投稿2017/02/02 05:27

###前提・実現したいこと
ここに質問したいことを詳細に書いてください
VBAでタスクをガントチャートに表示して管理するアプリを作っています。
「タスク1つにつきエクセル方眼紙3マスを背景赤着色、タスクとタスクの間には1マスを背景青着色」する機能を実装中に以下のエラーメッセージが発生しました。

###発生している問題・エラーメッセージ
「VBA 実行時エラー ’1004’ アプリケーション定義またはオブジェクト定義のエラーです」

###該当のソースコード ```VBA 'タスクを読み込み 'task_name(9) = task1 'task_name(10) = rest1 'task_name(11) =task2 'task_name(12) = rest2 'task_name(13) = task3 'task_name(14) = rest3 'task_name(15) = task4 Sub read_task() Dim task_name(15) Dim task_cnt As Integer Dim rest_cnt As Integer rest_cnt = 1 For task_cnt = 9 To 15 Step 2 task_name(task_cnt) = Cells(task_cnt, 3) MsgBox (task_name(task_cnt)) MsgBox (task_cnt) Next 'タスクの間に10分小休止を入れる For task_cnt = 10 To 15 Step 2 task_name(task_cnt) = "小休止" & rest_cnt rest_cnt = rest_cnt + 1 MsgBox (task_name(task_cnt)) MsgBox (task_cnt) Next End Sub 'ガントチャートで可視化 Sub gantt_chart() Dim project_name Dim gantt_num As Integer gantt_num = 1 project_name = Cells(7, 2) Worksheets("Sheet1").Cells(1, 1).Value = project_name 'セル着色【エラー箇所↓】 **Worksheets("Sheet1").Range(Cells(1, 2), Cells(1, 4)).Interior.Color = RGB(255, 0, 0)** 'セル着色【エラー箇所↑】 Worksheets("Sheet1").Cells(1, 5).Interior.Color = RGB(0, 0, 255) End Sub ###試したこと ①ステップイン実行でエラー箇所を特定し、1004エラーが掃かれる。 ②該当箇所を「sheet2(Sheet1)」に移して単独実行したところ、正常に実行された。 ![イメージ説明](9a573455076d25c091a91853e7908a9f.png) ③「Sheet1(To-Do リスト)」上でエラー箇所を別のサブプロシージャとして実行したところ、同じく1004エラーとなる。 ###補足情報(言語/FW/ツール等のバージョンなど) より詳細な情報 【開発環境】 OS Windows8.1 Excel2013 VBAバージョン 7.1

良い質問の評価を上げる

以下のような質問は評価を上げましょう

  • 質問内容が明確
  • 自分も答えを知りたい
  • 質問者以外のユーザにも役立つ

評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

気になる質問をクリップする

クリップした質問は、後からいつでもマイページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

  • プログラミングに関係のない質問
  • やってほしいことだけを記載した丸投げの質問
  • 問題・課題が含まれていない質問
  • 意図的に内容が抹消された質問
  • 過去に投稿した質問と同じ内容の質問
  • 広告と受け取られるような投稿

評価を下げると、トップページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

まだ回答がついていません

会員登録して回答してみよう

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
87.20%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問

同じタグがついた質問を見る

VBA

VBAはオブジェクト指向プログラミング言語のひとつで、マクロを作成によりExcelなどのOffice業務を自動化することができます。