アクセスのあるDBを開こうとしても、何も表示されなくなってしまいました。
さらに、終了させると必ずページ違反の不正な処理でアベンドし、ロックファ
イルがそのまま残ります。他のDBは開け、特定の1ファイルのみです。ネット
ワーク上のどのマシンからも同じ状態です。ファイルの容量はあり、空っぽと
いうわけではありません。「修復」しても同じ状態となります。非常に困って
います。

A 回答 (2件)

interさんおはようございます。


クエリやフォームだってインポートできますよ。
インポートするときにタブでテーブル、フォーム・・・って別になってますよ。
mnabeさんの言うようにダメDBとは違うディレクトリにおんなじ名前で空のDBを
作って、そこに全てをインポートしてみるのが有効ではないでしょうか?

もしも変換してしまっていて開けないのであれば(開くと・・・の形式を認識
できませんと出る)、access2000から旧バージョンに戻す方法もあるので
また別に回答しますね。

がんばってください。
    • good
    • 0
この回答へのお礼

ありがとうございます。ほぼ解決しました。結局なぜこんなことになったのか謎ですが・・。

お礼日時:2001/09/26 12:01

 壊れているって言うか、修復も不可能だと、既に手遅れである可能性があります。

が、以下の方法を試してみて下さい

 まずはローカルにそのDBをコピーして、空のDBを作成して、その開けないDBからインポートしてみて下さい。

 ファイルの容量と空っぽっていうのは結びつかないと思います。
 後は、ダメもとで、Access2000やAccessXPからアクセスしてみるとか、だれかが変換してしまったとかね。

この回答への補足

ありがとうございます。テーブルはインポートできるようですが(30個程度のテーブルがあるので全ては確認していませんが)、クエリ、フォーム、レポート、マクロはどうすればよいのでしょう

補足日時:2001/09/21 19:24
    • good
    • 0
この回答へのお礼

ほぼ解決しました、ありがとうございました。ORACLEへの接続のパスワードなど求められるようになってしまいましたが・・・

お礼日時:2001/09/26 11:59

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aと関連する良く見られている質問

Qフィルタオプション設定をVBAで処理したものに、さらに連番(ナンバリング)もされるようにVBAを作成し直したい。

よろしくおねがいします。

フィルタオプション設定を下記のようにVBAにて既に作成したものがあります。(ボタンをクリックするだけで、データが抽出されるようにしてあります。)
Sub Macro1()
Dim myRow1 As Long, myRow2 As Long
myRow1 = Sheets("職員名簿").Range("B65536").End(xlUp).Row
myRow2 = Sheets("東京都").Range("B65536").End(xlUp).Row
If myRow2 >= 5 Then
Sheets("東京都").Range("B5:T" & myRow2).ClearContents
End If
Sheets("職員名簿").Range("A2:S" & myRow1).AdvancedFilter Action:=xlFilterCopy, _
CriteriaRange:=Sheets("データ").Range("A2:F32"), CopyToRange:=Range("B5:T5"), _
Unique:=False
End Sub

この実行時に、A列に抽出されたデータの件数を自動的に1からの連番にて入る(ナンバリングされる)ように、VBAを追加作成し直したいのですが、
どうしたら良いか分からず、教えていただきたいと思います。

既に作成してある、VBAを実行した後に、A列のセル一つ一つに、
=SUBTOTAL(3,B$6:B6)
などのように、関数を入れて抽出した行分、コピーしていけばいいのではないか。とおっしゃるかもしれませんが、
作成は私の仕事なのですが、実際これを使っていくのは、私ではなく上司なので(エクセル超初心者で使いこなせない)、

データ抽出と同時に、A列に番号が連番されていくように、
ボタン一つで、データ抽出とナンバリングができるように、
VBAを追加作成し直したいのです。

どういう命令文を追加すればよろしいのでしょうか。
よろしくおねがいいたします。

よろしくおねがいします。

フィルタオプション設定を下記のようにVBAにて既に作成したものがあります。(ボタンをクリックするだけで、データが抽出されるようにしてあります。)
Sub Macro1()
Dim myRow1 As Long, myRow2 As Long
myRow1 = Sheets("職員名簿").Range("B65536").End(xlUp).Row
myRow2 = Sheets("東京都").Range("B65536").End(xlUp).Row
If myRow2 >= 5 Then
Sheets("東京都").Range("B5:T" & myRow2).ClearContents
End If
Sheets("職員名簿").Range("A2:S" & my...続きを読む

Aベストアンサー

質問者提示のコードで上手くいっているなら、
●●●で囲まれたコードを追加するだけです。

'------------------------------------------
Sub Macro1()
 Dim myRow1 As Long, myRow2 As Long
 myRow1 = Sheets("職員名簿").Range("B65536").End(xlUp).Row
 myRow2 = Sheets("東京都").Range("B65536").End(xlUp).Row
 If myRow2 >= 5 Then
  Sheets("東京都").Range("B5:T" & myRow2).ClearContents
 End If
 Sheets("職員名簿").Range("A2:S" & myRow1).AdvancedFilter Action:=xlFilterCopy, _
  CriteriaRange:=Sheets("データ").Range("A2:F32"), CopyToRange:=Range("B5:T5"), _
  Unique:=False

'●●● 
 Dim R As Long
 For R = 6 To Range("B65536").End(xlUp).Row
   Cells(R, "A").Value = R - 5
 Next R
'●●●

End Sub
'----------------------------------------------
 
以上。
 

質問者提示のコードで上手くいっているなら、
●●●で囲まれたコードを追加するだけです。

'------------------------------------------
Sub Macro1()
 Dim myRow1 As Long, myRow2 As Long
 myRow1 = Sheets("職員名簿").Range("B65536").End(xlUp).Row
 myRow2 = Sheets("東京都").Range("B65536").End(xlUp).Row
 If myRow2 >= 5 Then
  Sheets("東京都").Range("B5:T" & myRow2).ClearContents
 End If
 Sheets("職員名簿").Range("A2:S" & myRow1).AdvancedFilter Action:=xlFilterCopy, ...続きを読む

QWord文書を同じ名前・同じ場所に保存したとき

ファイルを同じ名前で同じ場所に保存しようとすると、ファイル名はすでに存在します、上書きしますか?といったメッセージが出てきますよね。
しかしWordだけはメッセージが出ずに、上書きされてしまいます。
操作方法は下記のようにしています。

1.Wordを編集後、名前「A.doc」をつけてMyDocumentに保存
2.Wordを終了
3.「A.doc」ファイルを開く
4.編集後、再度名前「A.doc」をつけてMyDocumentに保存
  ↓
メッセージが出ずに上書き保存されます。

ExcelでもIEでもメッセージが出るのに、なぜWordだけ・・・?
ちなみに2000と2002で同じようになりました。
仕様であるならその理由を教えてくださいm(_ _)m

Aベストアンサー

こんばんは。

私も同じようにやってみました。
そうしたらメッセージが出ずに上書き保存されたんです。
オプションの設定で何かあるのかと思い、保存で保存時にプロパティを確認する。にチェックしてみたところ
その後から上書き確認するようになったのですが・・・
でもその後で保存時にプロパティを確認する。のチェックを外しても上書き確認されていました。不思議です。
でも、なんともよく分からないので参考にならないですね_(._.)_

Qアクセス マクロ クリップボードを空っぽにしたい

大量のデータを検索結果でテーブルに落とすのですが、同様の処理をマクロで3回くらいすると、クリップボードに残っているような気配です。

クリップボードを空にする、あるいは擬似的な方法としては、マクロ文章をどうすればいいでしょうか?

Aベストアンサー

こんにちは。

クリップボードに残る・残らないといっても、最後のクリップボードに入れたものは残りますね。
上書きスタイルになっているはずですから、実際は、擬似的にするなら、空のものをクリップボードに入れればなくなるはずです。

以下は、私個人が使っているマクロの一部です。単に、クリップボードを空にする目的ではなくて、一旦、開いているクリップボードを閉じる目的でもあります。


'モジュールの先頭に
Private Declare Function OpenClipboard Lib "user32" (ByVal hwnd As Long) As Long
Private Declare Function EmptyClipboard Lib "user32" () As Long
Private Declare Function CloseClipboard Lib "user32" () As Long


Private Sub コマンド1_Click()
If OpenClipboard(ByVal 0&) Then
  Call EmptyClipboard
  Call CloseClipboard
End If
End Sub

こんにちは。

クリップボードに残る・残らないといっても、最後のクリップボードに入れたものは残りますね。
上書きスタイルになっているはずですから、実際は、擬似的にするなら、空のものをクリップボードに入れればなくなるはずです。

以下は、私個人が使っているマクロの一部です。単に、クリップボードを空にする目的ではなくて、一旦、開いているクリップボードを閉じる目的でもあります。


'モジュールの先頭に
Private Declare Function OpenClipboard Lib "user32" (ByVal hwnd As Long) As ...続きを読む

Q作成した1つのグラフ形式を使って同じグラフをいくつも作りたい

こんにちは。
大量のデータをつかって、グラフを作りたいのですが、
作るグラフの形式は1種類しかないので、そのテンプレートのようなものを作って、データを選びなおすだけで作るようなことはできないでしょうか?

Aベストアンサー

エクセルでしょうか?
作成した雛形になるグラフを右クリックして「グラフの種類」
「ユーザー設定」タブで選択元を「ユーザー定義」にして「追加」で
名前と説明文を入力してください。
後は、データ範囲を選択して「挿入」「グラフ」
「ユーザー設定」タブで選択元を「ユーザー定義」にして
該当のグラフを選択すればOKです。
※「標準グラフに設定」すればグラフの挿入時にこのグラフになります。

Q同じフォルダにある複数のブックから、同じ場所のセルとグラフを取得したい

同じフォルダにある複数のブックから、同じ場所のセルとグラフを取得したいです。

同じフォルダに以下のフォルダを置いています。

・個別データ(AAA).xls
・個別データ(BBB).xls
・個別データ(CCC).xls
・個別データ(DDD).xls
・集計用.xls

 ※個別データのフォーマットは同じものです。

それぞれの「個別データ」にある「チェックリスト」から

○ブック名
○グラフ(「Chart 10」)
○同じセル(ここではA1とします)の文字列

を取得して、「集計用.xls」に一覧として並べたいと思っています。

このような作業を関数、もしくはVBAで実現することは可能でしょうか?

※グラフそのものだけの取得が難しければ、
 グラフのデータ(A2~A5)の数値の取得でも大丈夫です。


VBA初心者であれこれ調べながらチャレンジしていたのですが
どうもうまく出来なくて困っております。

ぜひお知恵を貸してください。
宜しくお願いいたします。

Aベストアンサー

やって欲しいのは
新規マクロを作成し操作を覚えさせます。

集計用ブックを開く
マクロ記録開始
ブックAを開く
A1からA5をコピー
集計用ブックを選ぶ
張り付ける
ブックBを開く
A1からA5をコピー
集計用ブックを選ぶ
張り付ける
ブックC、ブックD、あとは繰り返し

マクロ記録終了

ここまでは出来るかと思います。

今どの機能で困ってますか、この先の動作でしょうか。

いずれにしてもVBAになると思います。


このカテゴリの人気Q&Aランキング

おすすめ情報