[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『[プロジェクトを表示できません。] エラー』(くまくま)
長年使ってきたエクセルファイルでトラブルです。
以下のようなアラートが出て、ファイルが起動できません。
「プロジェクトがロックされています。プロジェクトを表示できません。」
このアラートを閉じると、エクセルは閉じて、再度立ち上がろうとします。
立ち上がることができても、「コンパイルエラー オートメーションエラーです。致命的なエラーです。」のアラートが出て、やはりダウンします。
一旦、ファイルをコピーして、コピー元はリネーム、してコピーしたものを立ち上げると立ち上がることもあります。
しかし立ち上がったもので、マクロを実行すると「実行時エラー'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
元々パスワードなんてかけていない、という場合は、ブックが壊れる以外に、誰かが勝手にパスワードをかけたか、マルウェアにでも感染して、コードや設定を書き換えられたか、まで考えられます。
次に、たまに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
そして最後に、ソースコードを重要箇所はボカしても良いので、全文をここに貼ることはできないか。
以上
(ROM専) 2020/03/09(月) 14:49
・Dropboxはインストールされていないか
当該ファイルは、20台ほどのPCで共有していますが、
Dropboxの有無との関連性はありませんでした。
・一太郎はインストールされていないか
1台もありません。
・VBEのツール>参照設定の中に参照不可はないか
ありません・・・と思います・・・
・VBEのデバッグ>VBAProjectのコンパイル で、コンパイルエラーは発生しないか
エラー出ません。
・Decrale文を使っておりExcelは32bit版か。64bit対策済みか
よくわかりません。すみません。
・全てのモジュールを一旦エクスポートして、削除した後、インポートしなおしてもコンパイルエラーは出ないか そして最後に、ソースコードを重要箇所はボカしても良いので、全文をここに貼ることはできないか。
コード 以下のとおりです。
Dim Target As String
Target = "*******"
Call PaintTargetCharacter(Target)
End Sub
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
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
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
Call ResetCell2 Call ResetCell1
End Sub
With Range("k28:DL1000").Interior .Pattern = xlPatternNone .ColorIndex = 0 End With
End Sub
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
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.