• ベストアンサー

フォルダー内の特定excelファイルを開く方法

フォルダー内の特定excelファイルを開く方法 フォルダー内にたくさんエクセルファイルがありますがACCESSのフォームから特定excelファイルを開きたいです。したいことはフォームの中にテキストボックスを配置し、中にエクセルファイルの名前に記入し、実行ボタンを押すと一致するファイル名前を開くようになってほしいです。 どうせればよいかわかりません。ACCESSの初心者ですので助けください!

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

  • ベストアンサー
  • nicotinism
  • ベストアンサー率70% (1019/1452)
回答No.3

遅くなりました。。。 さてAcc2007でどうかな? エラーが発生した場合はエラーメッセージとエラーの発生した行をお知らせください Private Sub 見積番号_Click()   Dim basePath As String   Dim trgPath As String   Dim pathList As String   Dim i As Integer   Dim pathChoice()   Dim varAns As Variant   Dim pathX As String   basePath = "C:\全社員共通\[見積書]\見積\"   trgPath = Dir(basePath & me!見積番号 & "*.xls")   If trgPath = "" Then     MsgBox me!見積番号 & " が見つかりません"     Exit Sub   End If   Do Until trgPath = ""     ReDim Preserve pathChoice(i)     pathX = i & " ==> " & trgPath     pathList = pathList & vbCrLf & pathX     pathChoice(i) = basePath & trgPath     trgPath = Dir     i = i + 1   Loop   varAns = InputBox(pathList, "=== 番号で選んでね ===")   If varAns = "" Or IsNumeric(varAns) = False Then     Exit Sub   End If   If Int(varAns) > i Or Int(varAns) < 0 Then Exit Sub   CreateObject("shell.application").shellexecute pathChoice(varAns) End Sub

nuocngoai
質問者

お礼

お世話になりました。 いろいろありがとうございます。これでやってみようと思いますが急に別のエラーに出ててどうしたらいいか分かりません。  イベント プロパティ指定した式 読み込み時でエラーが発生しました:オブジェクトまたはクラスがこのイベントセットをサポートしていません。  イベント プロパティ指定した式 レコード移動時でエラーが発生しました:オブジェクトまたはクラスがこのイベントセットをサポートしていません。 下記のように命令文があります。 Private Sub Form_Current() 'レコード移動時年度は自動的に次のレコードコッピする Dim rs As DAO.Recordset If Me.NewRecord Then Set rs = Me.RecordsetClone rs.MoveLast Me![見積番号].DefaultValue = rs![見積番号] + 1 End If End Sub Private Sub Form_Load() DoCmd.GoToRecord , , acLast End Sub

その他の回答 (3)

  • nicotinism
  • ベストアンサー率70% (1019/1452)
回答No.4

キリが無いので回答はこれまでにしますが、 コンパイルが通るのか? 参照設定にDAO3.6が設定されているか? を確認してください。 PS. Me![見積番号].DefaultValue = rs![見積番号] + 1 は Me![見積番号] = rs![見積番号] + 1 で十分でしょう。

nuocngoai
質問者

お礼

大変助かったです。これでエラーもなくなりましたし、複数の見積番号から開きたいファイルもお陰様で開けるようになりました。 ありがとうございました。またよろしくお願いします。

  • nicotinism
  • ベストアンサー率70% (1019/1452)
回答No.2

>中にエクセルファイルの名前に記入し は面倒じゃ有りませんか? 年を喰うと昨日の晩飯も覚えてない (^^ゞ。ましてやファイル名なんて・・・。 フォルダが固定できるなら、一覧を表示してユーザから選択してもらった方が 良さそうにも思えます。ファイル数はどれ位? ファイル選択のダイアローグはAccessのバージョンによっては大きく変わりますので まず、OSとAccessのバージョンを教えてもらわんことには。 ※2007だと分かりません Windows XP &ACC2010や2002(多分2003も)だと何とかなるかも? ※※期待しないでね。

nuocngoai
質問者

補足

こちらの質問はちょっと不足だったのであっちの質問にかわったんです。 OS:Windows XP ACCESSバージョンは2007年です。

  • layy
  • ベストアンサー率23% (292/1222)
回答No.1

ほかの質問と重なりますが、 EXCELを開くこと と テキストボックスの値でファイル名を構成すること と まずは、ファイルはBOOK1.XLS固定にするとか、分けて考えた方がよいのでは?。 ファイルを開く記載はSUB関数にして、ファイル名を与えるとか、です。 参考になりそうなもの、探してみる。