こんにちは。 今回は、 タイトル、 C,VB,Access,Excel ここはどこ?私は誰? ---> 記憶喪失? あなたは、どこから来たの?どこのダレ? ---> 職務質問? です。 えっ何???いつも、タイトル変でわからないよ。 そんなんだと、読まないで、ゴミ箱に入れられちゃうよ。。。。 改めまして、今回は、自分が起動した場所と自分の名前を調べる方法です。 C,VB,Access,Excelによって、違うので、4パターン書きました。 Excel,Access,VB,Cの順番に解説します。 枠外解説・グチ --- 最近、職務質問、されてない いきなり、関係無い話ですが、 最近、帰りが早いので、警察官に職務質問されてない。 6・7年前、夜中に帰ったときは、たまに質問されてたっけ、、、 また、早朝出勤時に、警察官に「いま、帰りですか」とAM4時頃に聞かれ、 「いまから出勤です」 なんて、いったら、 「どこに?行くんだ、会社のガギは?」 と連続に質問され、 その時、自転車の前カギがたまたま付いてなく、盗難自転車扱いされたり、、 なんて、こと、ありました。 最近は、仕事でハマってないのと、警察官が熱心じゃないのかなぁ? まぁ、いいことなんだけど、チョット思い出したので。 警察官殿に、 自販機荒しや変造500円なんとかしろ、、 と言いたい酒屋の次男坊でした。 /* * 2.Excel VBA ここはどこ?私は誰? */ Excelファイルが、 どこから起動したか(どこに保管されているか) 知りたい時、ありませんか? えっ、無い。。。さようなら。 じゃなくて、相対パスとかで、 処理したいとき、知っていると便利だと思うので、説明します。 *各処理言語によって、微妙にちがう、、、VBAで一緒にならないの?かなぁ ----- Sub Record1() MsgBox "Application.Path = " & Application.Path MsgBox "Application.Name = " & Application.Name MsgBox "ActiveWorkbook.Path = " & ActiveWorkbook.Path MsgBox "ActiveWorkbook.Name = " & ActiveWorkbook.Name End Sub ----- を実行してみてください。 Application.Pathかな?と思ったのですが、 これは、Excel本体のインストールされているパスで、 目的のほうは、 ActiveWorkbook.Pathです。 う〜ん。。。 /* * 3.Access VBA ここはどこ?私は誰? */ 次に、Access MDBの位置です。 ----- Private Sub B_RUN_Click() Dim dbsA As Database Set dbsA = CurrentDb MsgBox "name = " & dbsA.Name MsgBox "Ver = " & dbsA.Version Set dbsA = Nothing End Sub ----- よく、わからなかったので、 CurrentDbを開いて、.Nameを見てます。 *ここの.Nameってパス付きなんだよね、、、逆に.Pathがなかったような? う〜ん、、、私の調べ方が悪い? /* * 4.VB ここはどこ?私は誰? */ 次にVBです(私の環境VB5です、、、) ---- Private Sub Command1_Click() MsgBox "App.Path = " & App.Path MsgBox "App.EXEName = " & App.EXEName End Sub ---- あれ、Appなの、、こんどは。。。 で、.EXENameですか、、、 まぁ、気にしない、気にしない、、、 /* * 5.C ここはどこ?私は誰? */ 最後に、Cです(Ms−DOSコンソール) ----- #include int main(int argc, char *argv[]) { printf("argv[0] = %s\n", argv[0]); } ----- まだ、講座でやってませんが、Main関数の引数の、 argvの0番目に、位置が入っていると思います。 Cは、違っても、気にならないのですが、 Excel,Access,VB と微妙に違ったので、なぜ?と思いました。 /* * 6.おわりの挨拶 */ 次は、デルファイ、、、では、、と行きたいとこですが、 私、まだ、デルファイやってないので、、、、、 前回の文字コードと今回の起動位置?を使用して、 次回ぐらいに、ファイル処理とは、、とカッコつけて、発行したいと考えてます。 今回も軽めにサヨナラです。 お時間のある人は、サンプルダウンロードして、研究してください。 では、また。 三流PGのKen3でした。
下記のようなテスト結果です。
質問や要望など連絡方法でお互い確認が取りやすく、便利なのが掲示板なのですが、私の対応のまずさから不定期で荒れてしまい、掲示板は現在封鎖中です。(反省しなきゃ)
感想や質問・要望・苦情など 三流君へメッセージを送る。 時間的余裕のある要望・質問・苦情の場合は、下記のフォームからメッセージを送ることができます。 |
←パソコンの技術系の書籍を探しているなら コンピュータ関連の出版社33社(アスキー、インプレス等)が共同運営するコンピュータの本・専門店 ※種類が豊富で探し易い※在庫ありが48時間以内発送 |