- ベストアンサー
Access(VBA)で「App.path」
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
近いのは、 Currentdb.Nameですね。 これによりMDBのフルパス名が手に入りますので、そこからコードでフォルダ名の部分だけを切り出してやります。 Call fnFileWrite2(GetDir(CurrentDB.Name) & "test110.txt", … Public Function GetDir(strPathName As String) As String 'ファイル名も含めたパス名からディレクトリ部分抜き出す Dim i As Long Dim strS As String * 1 For i = Len(strPathName) To 1 Step -1 strS = Mid$(strPathName, i, 1) If strS = "\" Or strS = ":" Then GetDir = Left$(strPathName, i) Exit For End If Next i End Function
関連するQ&A
- 【VBAでapp.path が取得できない】
VBAでapp.path を取得しようとすると、「オブジェクトが必要です」エラーが表示されます。 アプリケーション実行パスを取得する方法はありますか? Excel2000を使用しています。 宜しくお願いいたします。
- ベストアンサー
- Visual Basic
- Access VBA での有効なパスチェック
Access VBA での有効なパスチェック お世話になっております。 Access2002 VBAで、画面入力されたパスが有効なら、 そこにテーブルの内容をExcel出力する。といったことをしているのですが、 画面入力されたパスが、 たとえば「C:\\\\\\tmp\\\\\\\」などと入力された場合、 フォルダチェックに用いているDir関数ではOKなのですが、 Excel出力するDoCmd.TransferSpreadsheetでエラーとなってしまいます。 ここでのエラーが、実行時エラー:2220なので、例外処理で拾っているのですが、 フォルダチェックの段階で、はじくよい方法はあるでしょうか? 例文です> str_tmpPath = txt_Path.Value 'ここで「C:\\\\\\tmp\\\\\\\」と入力されたとする '有効なパスかチェックする If Dir(str_tmpPath, vbDirectory) = "" Then '上記のパスで通ってしまう。戻り値は"." MsgBox "入力しなおして" End End If str_SavePath = str_tmpPath & "ファイル名" 'Excel出力 DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel9, テーブル名, str_SavePath, True 'ここで実行時エラー:2220が発生 以上、よろしくお願いいたします。
- ベストアンサー
- その他(プログラミング・開発)
- エクセル VBA フルパスからファイル名
エクセルのセルに以下の情報が入っています。 1 D:\borland\bc55\license.txt 2 D:\borland\bc55\readme.txt ・ ・ ・ n C:\borland\bcc55\Include\methodcontext.h フルパスの中のファイル名のみ取得したいですが、 VBAの初心者でなかなかできないです。 ご教授お願いいたします。
- ベストアンサー
- Visual Basic
- ACCESS VBA txtファイル出力
お世話になっております。 不慣れながら会社でACCESSVBAを使っております。 エクセルファイルをACCESSに取り込み、VBAを使ってtxtファイルとして出力したいです。 その際、現時点で出力まではできているのですが、先頭列の頭の0が落ちてしまいます。 頭の0を残すコードの書き方はどのようにすればよいのでしょうか。 また、そのような設定はありますか。 力不足で恐縮ですが、よろしくお願いします。 保存先はデスクトップ、テーブル名はテーブル名を代入した変数です。 DoCmd.TransferText acExportDelim, , テーブル名, "…(パス)…テスト.txt"
- 締切済み
- Visual Basic
- C言語でフルパスのファイル読み込み方法について
VBAからC言語の勉強を始めたのですが、 c:\test\myfile.txt というファイルを読み込むとき FILE *fp; fp = fopen("c:\\test\\myfile.txt", "r"); というようにアドレスバーからパスをコピーして貼り付けた後、\を\\に置換しなければなりません。 そのままパス情報を使えていたVBAのプログラムよりかなりわずらわしく感じるのですが、C言語ではファイルの読み込みでフルパスを指定して読み込むのは一般的ではないのでしょうか。 それともほかにやり方(\のままパスを設定する方法)があるのでしょうか。 なんだか使い勝手が違ってちょっと戸惑っているのですが、よろしくお願いします。
- ベストアンサー
- C・C++・C#
- スペースを含んだパスにブラウザでアクセス出来ない
CentOS7でApache HTTP server2.4を使用しているのですが、httpd.confで指定してあるDocumentRootディレクトリ下にスペースを含んだパスは、ブラウザに表示もされないし、アドレスを入力しても 500 Internal Server Errorとなります。スペースを含んだパスにアクセスできるようにする方法はないでしょうか?
- ベストアンサー
- その他(ITシステム運用・管理)
- アクセスからアクセスファイルを開くには?
アクセスからアクセスファイルを開きたいのですがうまく出来ないので教えてください。 Option Compare Database Option Explicit Sub test() Dim App As Access.Application Dim MyFileName As String Set App = CreateObject("Access.Application") MyFileName = CurrentProject.Path & "\アクセスファイル名.mdb" With App .Visible = True End With Set App = Nothing End Sub で、 .Visible = True でアプリケーションは開きますが Set App = Nothing を通過すると開いたアプリケーションが閉じてしまいます。 それにアプリケーションが開くだけで肝心のファイルが開かれません。 なので「.ファイルを開くVBAコード」が必要だと思うのですがそのコードがわかりません。
- ベストアンサー
- オフィス系ソフト
- VBAにて変数をコントロール名として使用する方法
Access2002、VBAにて Me.txtテキストなどのようにコントロール名を指定しますが この「txtテキスト」の部分を変数を使って コントロールの指定を行うにはどのように記述すればよいでしょうか。 Dim test as variant test = "txtテキスト" Me.test のように・・・(上は適当です、すみません)
- ベストアンサー
- オフィス系ソフト
- AppActivate Appではなぜだめなのでし
エクセルファイルをvbaで開いて全画面表示したいのですが Sub Sample1() Dim App As Excel.Application Dim xlBook As Workbook Dim MyFileName As String MyFileName = "D:\test.xls" Set App = CreateObject("Excel.Application") Set xlBook = App.Workbooks.Open(MyFileName, ReadOnly:=True) App.Visible = True AppActivate App 'エラー発生 End Sub このコードだと AppActivate Appでエラーが発生します。 たまにシステムの裏側で開いてしまうので 常に前面に持ってこれるようにしたいのですが AppActivate Appではなぜだめなのでしょうか?
- ベストアンサー
- Visual Basic
- App path not foundが出ます。
Window7 home premium SP1を使用していますが、ここ最近気が付くと、PC稼働中に「App path not found. Error Details: Error:オブジェクト参照がオブジェクトインスタンスに設定されていません。」とポップアップがでます。OKボタンしかないので、OKを押すと普通に消え、PC操作上何も問題ないのですが、30分に一回くらい出てくるので邪魔になっています。 何か解決策はないでしょうか?
- ベストアンサー
- Windows 7
お礼
返事が遅れて済みません。回答ありがとうございます。 実は先輩のSEの方にも同じ方針でコードを教えていただきました。 SQLのconvert(SQLServer)とto_Date(Oracle)の様な形で 「App.path」にもそのままで使える似たような命令があればと 期待していたのですが、残念ながら無さそうですね。 「App.path」が使えるのは当たり前だと勝手に思いこんでいただけに 回答していただいて助かりました。