[[20200306084823]] 『[プロジェクトを表示できません。] エラー』(くまくま) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『[プロジェクトを表示できません。] エラー』(くまくま)

長年使ってきたエクセルファイルでトラブルです。
以下のようなアラートが出て、ファイルが起動できません。

「プロジェクトがロックされています。プロジェクトを表示できません。」

このアラートを閉じると、エクセルは閉じて、再度立ち上がろうとします。
立ち上がることができても、「コンパイルエラー オートメーションエラーです。致命的なエラーです。」のアラートが出て、やはりダウンします。

一旦、ファイルをコピーして、コピー元はリネーム、してコピーしたものを立ち上げると立ち上がることもあります。

しかし立ち上がったもので、マクロを実行すると「実行時エラー'1004'アプリケーション定義またはオブジェクト定義のエラーです。となり、実行できません。
マクロ以外の関数部分は正常に機能しているようです。

ファイルは***.xlsmで、共有(レガシ)の設定があります。
共有を解除しても症状は変わりません。

このフィアルは、社内の基幹業務で使っているもので、NASに置かれ、十数人がアクセスし共有しています。
また、他の20ファイルほどとリンクがあります。

また、「プロジェクトがロックされています。プロジェクトを表示できません。」のアラートが出ず、すんなり立ち上がることもあります。
使うPCによっても出たり、出なかったりです。

ちょっとお手上げ状態です。お助け頂けませんでしょうか。

Office365 です。
ファイルサイズ 1,114KB です。
アクセスするOS Windows10 Windows8.1 です。

< 使用 Excel:Office365、使用 OS:Windows10 >


読む限り コードに問題があると思われるので、

(1) マクロ無効で開き
(2) 共有の設定を解除し
(3) 問題のあるコードを修正する(参照設定の確認を含む)

という手順になるのではないでしょうか?
(チオチモリン) 2020/03/06(金) 15:48


チオチモリン さま ありがとうございます。

コードに問題があると思われるので、

これまで、何年も使ってきたもので、このトラブルは、
ここ1〜2週間で発生したものです。
コードに誤りがあるとは思えないのですが・・・

トラブル発生直前に変更したのは、同じファイル内でのデータの読み込み関連だけです。
関数で処理していますので、これが影響しているとは思えないのです。

ただ、時折VBから「実行時エラー 1004 アプリケーション定義
またはオブジェクト定義のエラーです」というアラートが出ることがありました。

関数が、VBに影響することがあるのでしょうか?

(くまくま) 2020/03/09(月) 08:48


まず、「プロジェクトがロックされています…」のエラーは、VBAプロジェクトにパスワードをかけておき、それを見ようとした際に表示されるものです。 ブックを開いただけで表示されるものではないので、本当にブックを開くだけでそのエラーになるなら、ブックが壊れてしまっているのでしょうね。 新しいブックに移行すべき時が来たように思います。(壊れたシートをコピペすると、新しいブックにも同じ症状が出る場合があるので、まずは原因特定です)

元々パスワードなんてかけていない、という場合は、ブックが壊れる以外に、誰かが勝手にパスワードをかけたか、マルウェアにでも感染して、コードや設定を書き換えられたか、まで考えられます。

次に、たまに1004エラーになるということは、アクティブなオブジェクトに依存するような不安定なコードになっていて、たまたまうまく動いていただけに思えます。 コードを全部ここに書き出す事はできないでしょうから、貴方自身がステップ実行し、問題個所を特定しない事には、何もアドバイスできません。

数式を変えただけとの事ですが、その数式はどんなものですか? マクロでユーザー定義関数を作っていたりしませんか?
(???) 2020/03/09(月) 10:28


>プロジェクトがロックされています。プロジェクトを表示できません。

2010では「プロジェクトを表示できません」というメッセージがでるのは共有設定のあるブックでVBAプロジェクトを見ようとする時に表示されるものだったので

Office365 でも同様かと思ったのですが違うのかもしれません。(環境を持ってないので確認できずすいません)

※ いずれにせよ現実にエラーが発生しているのだから、まずは確認かと思います。
  (コード及び、データ)
(チオチモリン) 2020/03/09(月) 10:59


??? さま ありがとうございます。
問題の一部が解決しました。

「プロジェクトがロックされています…」のエラーは、VBAプロジェクトにパスワードをかけておき、

パスワードはかけていませんが、一部、新たに「保護を有効」にしていました。
これがVBに引っかかったようです。
これを解除したら解決しました。

ただ、解決したのは、一部のPCだけで、まだ「プロジェクトがロックされています…」のエラーがでるPCがあります。

本当にブックを開くだけでそのエラーになるなら、ブックが壊れてしまっているのでしょうね。

はい、開くだけでエラーになります。
ただ、一旦、ファイルをコピーして、コピー元はリネームしてコピーしたものを
立ち上げると正常に立ち上がることもあります。

次に、たまに1004エラーになるということは、アクティブなオブジェクトに依存するような不安定なコードになっていて、

恐縮です「アクティブなオブジェクトに依存するような」とは、例えばどういったコードでしょうか?

数式を変えただけとの事ですが、その数式はどんなものですか?

関数です。SUMPRODUCT や INDEX MATCH などで、同じブック内のSheetを参照するような関数です。

マクロでユーザー定義関数を作っていたりしませんか?

していません。

(くまくま) 2020/03/09(月) 14:39


チェックポイント
・Dropboxはインストールされていないか
・一太郎はインストールされていないか
・VBEのツール>参照設定の中に参照不可はないか
・VBEのデバッグ>VBAProjectのコンパイル で、コンパイルエラーは発生しないか
・Decrale文を使っておりExcelは32bit版か。64bit対策済みか
・全てのモジュールを一旦エクスポートして、削除した後、インポートしなおしてもコンパイルエラーは出ないか

そして最後に、ソースコードを重要箇所はボカしても良いので、全文をここに貼ることはできないか。

以上
(ROM専) 2020/03/09(月) 14:49


ROM専 さま ありがとうございます。

・Dropboxはインストールされていないか

当該ファイルは、20台ほどのPCで共有していますが、
Dropboxの有無との関連性はありませんでした。

・一太郎はインストールされていないか

1台もありません。

・VBEのツール>参照設定の中に参照不可はないか

ありません・・・と思います・・・

・VBEのデバッグ>VBAProjectのコンパイル で、コンパイルエラーは発生しないか

エラー出ません。

・Decrale文を使っておりExcelは32bit版か。64bit対策済みか

よくわかりません。すみません。

・全てのモジュールを一旦エクスポートして、削除した後、インポートしなおしてもコンパイルエラーは出ないか そして最後に、ソースコードを重要箇所はボカしても良いので、全文をここに貼ることはできないか。

コード 以下のとおりです。


Sub *******()

Dim Target As String

Target = "*******"

Call PaintTargetCharacter(Target)

End Sub


Sub PaintTargetCharacter(ByVal Target As String)
    Dim FoundCell As Range, SearchArea As Range
    Dim Addr As String

    If Target = "False" Then Exit Sub

    Set SearchArea = ActiveSheet.Range("g28:g1000")

    Set FoundCell = SearchArea.Find(What:=Target, LookIn:=xlValues, _
                    LookAt:=xlPart, MatchCase:=False, MatchByte:=False)

    If FoundCell Is Nothing Then Exit Sub

    Addr = FoundCell.Address

    Do
        Call PaintCh(FoundCell, Target)
        Call PaintCh2(FoundCell, Target)

        Set FoundCell = SearchArea.FindNext(After:=FoundCell)
        If FoundCell Is Nothing Then Exit Do

    Loop Until FoundCell.Address = Addr

End Sub


Sub PaintCh(FoundCell As Range, Target As String)
    Dim FoundRow As String
    Dim FoundCells As String

    FoundRow = FoundCell.Row
    FoundCells = "e" + FoundRow + ":" + "DL" + FoundRow

    With ActiveSheet.Range(FoundCells).Interior
    .Pattern = xlPatternNone
        .Color = RGB(198, 226, 255)

    End With

End Sub


Sub PaintCh2(FoundCell As Range, Target As String)
    Dim FoundRow As String
    Dim FoundCells As String

    FoundRow = FoundCell.Row
    FoundCells = "e" + FoundRow + ":" + "J" + FoundRow

    With ActiveSheet.Range(FoundCells).Interior
    .Pattern = xlPatternNone
        .Color = RGB(198, 226, 255)

    End With

End Sub


Sub PaintTargetCharacterReset()

 Call ResetCell2
 Call ResetCell1

End Sub


Sub ResetCell1()

     With Range("k28:DL1000").Interior
        .Pattern = xlPatternNone
        .ColorIndex = 0
    End With

End Sub


Sub ResetCell2()

     With Range("C28:J1000").Interior
        .Pattern = xlPatternNone
        .ColorIndex = 0
    End With

End Sub


(くまくま) 2020/03/09(月) 17:04


ソースコードに開いただけでエラーを起こすような致命的な部分はなさそうです。

「プロジェクトのロック」で一番可能性が高いのは
・Dropbox  ←詳細は要検索してください。アンインストールするか・設定でバッジをOFFにするのが必須です。
・参照不可 ←PC毎に確認する必要があります。
なのですが、1台毎に厳密に調べていないようなので、これ以上の回答はできません。

新しいブックを作って、シートとマクロを引っ越しするのが次の手ですね。
(ROM専) 2020/03/09(月) 17:39


ROM専 さま ありがとうございます。

Dropbox  ←詳細は要検索してください。アンインストールするか・設定でバッジをOFFにするのが必須です。

Dropbox 入っているPCでも入ってないPCでも、発生したりしなかったりする。
発生、条件を特定できていません。

参照不可 ←PC毎に確認する必要があります。

わかりません。

「Shift」キーを押したまま起動させると、正常に起動することがある・・・できないこともある・・・?

また、一旦、ファイルをコピーして、コピー元はリネームして、
コピーしたものを立ち上げると立ち上がることもあります。だめなこともありますが、
かなり高確率で立ち上がります。
ちなみに、全く症状のでないPCもあります・・・

何かしら、ローカルのキャッシュに残っていて、それが障害になっているような気もし、
以下のファイルを削除して試してみたところ、なんと立ち上がりました!!

C:\Windows\Prefetch

	EXCEL.EXE-****.pf

C:\Users\****\AppData\Local\Microsoft\Office\OTele

	excel.exe.db

C:\Users\****\AppData\Local\Microsoft\Office\16.0

	excel.exe_Rules.xml

C:\Users\****\AppData\Local\Microsoft\Office\16.0\Floodgate

	Excel.CampaignStates.json
	Excel.GovernedChannelStates.json
	Excel.Settings.json
	Excel.SurveyEventActivityStats.json
	Excel.SurveyHistoryStats.json

ところが、これまで立ち上がっていた別のPCで「プロジェクトのロック」が発生しました・・・
これは、一体何なんでしょう???

(くまくま) 2020/03/11(水) 17:24


皆様ありがとうございました。

本件、解決できず Excel Q&Aサロンでもお聞きしてみます。

https://excelfactory.net/excelboard/exgeneral/excel.cgi

一旦、こちらは閉じさせていただきます。

チオチモリン さま
??? さま
ROM専 さま

親身にご助言いただき、誠にありがとうございました。
(くまくま) 2020/03/13(金) 09:18


コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.