- ベストアンサー
UserNameを取得したい
エクセル(2003)で Sub test() MsgBox Application.UserName End Sub と同じような意味をアクセスでも行いたいのですが どうゆうコードを書けばいいのでしょうか? 同じコードを貼り付けてみましたがだめでした。 なぜ同じオフィスなのにだめなのでしょう? アドバイスをお願い致します。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
その他の回答 (1)
- hallo-2007
- ベストアンサー率41% (888/2115)
関連するQ&A
- アクセス 自身のデータベース名を取得するのは「CurrentDatabase」ではない?
Sub test() MsgBox CurrentDatabase End Sub を実行すると 「変数が定義されていません。」となってしまいます。 エクセルで言う MsgBox ActiveWorkbook.Name を行ないたいのですがどんなコードを書けばいいのでしょうか? よろしくお願いします。
- ベストアンサー
- オフィス系ソフト
- フルパスを取得するにはどうすればいいですか
access2003です 自身のファイル名を取得するのは Sub test() MsgBox CurrentProject.Name End Sub で出来ますが フルパスを取得するにはどうすればいいですか? よろしくお願い致します。
- ベストアンサー
- オフィス系ソフト
- アクセスからエクセルファイルを全て閉じたい
アクセスからエクセルファイルを全て閉じるにはどうすればいいでしょう?(保存して閉じたいです) エクセルファイルは名前やファイル数はランダムです。 アクセスの標準モジュールに Sub Test1() Dim ExcelApp As Object Set ExcelApp = CreateObject("Excel.Application") ExcelApp.Application.Visible = False Set ExcelApp = Nothing End Sub と書きました。 このあいだにコードをいれるのですが 思いつきません。 まず数を取得して 一つ一つ保存→閉じるかな?と思い MsgBox ExcelApp.Worksheet.Count を入れてみましたが エラーになりました。 オフィスのバージョンは2003です。 ご教授よろしくお願い致します。
- ベストアンサー
- オフィス系ソフト
- チェックボックスにチェックが付いているかを取得したい
ACCESS2003を使用しています。 チェックボックスにチェックが付いているかを取得したいのですが下のコードを実行すると 「実行時エラー'94' Nullの使い方が不正です。」 というエラーになってしまいます。 Sub test() MsgBox Form_フォーム1.チェック0.Value End Sub フォームを開くとチェックボックスが図のように灰色になるのですがこれが原因なのでしょうか? ちなみに同じことをエクセルで行なったら問題なくできました。 よろしくお願い致します。
- ベストアンサー
- オフィス系ソフト
- アクセスvbaでフリガナを取得したいのですが
Sub tset() MsgBox Application.GetPhonetic("東京") End Sub だとエラーになってしまいます。 エクセルでは問題なく使えます。 どうやら、 GetPhoneticは、エクセルのみで使用できるメソッドのようです。 なのでググってみたら https://foolexp.wordpress.com/2012/07/14/p2wpsu-4l/ がヒットしたのですが、 作者には申し訳ないのですが、 もうちょっとスマートなコードはないのでしょうか? エクセルオブジェクトを作ってやる方法があると思うのですが コードがわかりません。
- ベストアンサー
- オフィス系ソフト
- 元のプロシージャーを取得するプロパティ
Sub test1() Call test2 End Sub Sub test2() If ?? Then MsgBox "test1から実行されたマクロです。" End If End Sub 上記のコードで どこから実行されたプロシージャ化を取得する方法はありますか? 現在は、 Dim bl_test1_yes As Boolean Sub test1() bl_test1_yes = True Call test2(bl_test1_yes) End Sub Sub test2(bl_test1_yes) If bl_test1_yes = True Then MsgBox "test1から実行されたマクロです。" End If End Sub としていますが、 元のプロシージャーを取得するプロパティがあれば教えてください。
- ベストアンサー
- オフィス系ソフト
- msoFileDialogFolderPicker
オフィス2003を使っています。 Sub Sample1() With Application.FileDialog(msoFileDialogFolderPicker) If .Show = True Then MsgBox .SelectedItems(1) End If End With End Sub をエクセルの標準モジュールに張り付けるとフォルダを選択するダイアログが開きますが、 アクセスに張り付けると 「msoFileDialogFolderPicker」 の部分が、「変数が定義されていません」となってしまいます。 アクセスでも使えるようにするにはどうすればいいでしょうか?
- ベストアンサー
- Visual Basic
- ややこしいですがご協力ください
アクセスからエクセルを起動してエクセルで実行した変数をアクセスに持って帰りたいです。 【アクセス側】_ Sub エクセルの値を持ってくる() Dim xlApp As Excel.Application Dim xlBook As Excel.Workbook Dim MyFileName As String Dim myStr As String Set xlApp = New Excel.Application MyFileName = "C:\Users\エクセル.xlsm" Set xlBook = xlApp.Workbooks.Open(MyFileName) xlApp.Visible = True xlApp.Run "'" & MyFileName & "'!" & "Excel_test" Set xlApp = Nothing MsgBox myStr ’★ End Sub 【エクセル側】 Sub Excel_test() Dim myStr As String myStr = "アクセスへ渡す" MsgBox myStr End Sub としたときに、アクセスの MsgBox myStr ★でも エクセルで実行させた変数を持って帰りたいのですが どこを修正すればよろしいでしょうか? ご教授よろしくお願いします。
- ベストアンサー
- オフィス系ソフト
- アクセスでApplication.Caption
アクセスでApplication.Captionに代わるコードはありますか? エクセルでなら Sub test01() Debug.Print Application.Caption End Sub は動きますが、アクセスだとコンパイルエラーになります。 CaptionがApplicationのメンバにないからだと思います。 いくつかのアプリケーションを跨いでVBAを動かしているのですが、 アクセスで自身のアプリケーション名、もしくはファイル名を取得するコードはありますか? ご回答よろしくお願いします。
- ベストアンサー
- オフィス系ソフト
- エクセルの変数をアクセスでも使いたい。
エクセルの標準モジュールには Option Explicit Public 文字列 As String Public アクセス As Object Public Sub エクセル側テスト() 文字列 = "あ" Set アクセス = GetObject("C:\db1.mdb") If Not アクセス Is Nothing Then アクセス.Run "アクセス側テスト" End If Set アクセス = Nothing End Sub アクセス(db1.mdb)の標準モジュールには Option Compare Database Option Explicit Public 文字列 As String Sub アクセス側テスト() MsgBox 文字列 End Sub という風にコードを書きましたが やはりアクセスではエクセルで指定した変数が受け継がれません。 これを「アクセス側テスト」のマクロでもmsgboxで「あ」と表示させるにはどうすればいいのでしょうか? よろしくお願いします。
- ベストアンサー
- オフィス系ソフト
- 用事が詰まってないのに用紙が詰まってないのに用紙を取り除いてくださいと言われるのはなぜですか?
- 用事が詰まってないのに用紙が詰まっていないのに用紙を取り除いてくださいと言われるのは何故ですか?
- なぜ用事が詰まっていないのに用紙が詰まっていないのに用紙を取り除いてくださいと言われるのでしょうか?
お礼
どちらとも試してみたらできました! 大変参考になりました。ご回答ありがとうございます。