
No.1
- 回答日時:
色々と面倒です。
社内で使用するのでしょうか?
VBAコード中に平文でユーザー名とパスワードを記述するのはまずいのでは?と。
仮にVBAProjectを保護し内容を隠したとしても
こじ開けるツールが巷に出回っています。
上司の許可は得られるのでしょうか?
問題ないと仮定して…
'接続
Sub Net_Add()
Dim WshNetwork As Object
Const 共有名 = "\\パソコン名\共有名"
Const パスワード = "himitsu"
Const ユーザー名 = "ore"
Set WshNetwork = CreateObject("Wscript.Network")
On Error Resume Next
WshNetwork.MapNetworkDrive "N:", 共有名, , ユーザー名, パスワード
On Error GoTo 0
Set WshNetwork = Nothing
End Sub
'切断
Sub Net_Del()
Dim WshNetwork As Object
Set WshNetwork = CreateObject("Wscript.Network")
On Error Resume Next
WshNetwork.RemoveNetworkDrive "N:"
On Error GoTo 0
Set WshNetwork = Nothing
End Sub
但し、
>マクロを使用時のみの接続
は難しいです。分かりませんでした。
上記Net_Del でネットワークドライブを削除しても
エクスプローラなどで共有フォルダを開いていたり等々すると
共有フォルダへの接続は維持されたままになります。
別件で共有フォルダへ接続していた場合に強制的に切断されては困るので
仕方のない事かと思います。
コマンドプロンプトの、Net Use でも同様な結果でしたね。
以上、ご参考まで。
私からは以上です。
ご回答、ありがとうございます。
返答が遅くなり申し訳ありません。
ご指摘の通り、使用は会社でを想定しておりました。
VBAコード中にユーザー名とパスワードを記述する事に何も思っておりませんでしたが、
確かに相談すべき内容である事を認識させて頂きました。
ありがとうございます。
さて本題ですが、『MapNetworkDrive "N:"』とありますが、ネットワークドライブではなく、
単にホルダーが共有されているだけですが、これでできるのでしょうか?
実際にやってみれば良いのですが、他が忙しく、まだ手を付けていない状態です。
ご教授頂けると幸いです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
【教えて!goo ウォッチ 人気記事】風水師直伝!住まいに幸運を呼び込む三つのポイント
記事を読む>>
-
【Excel VBA】ネットワーク上の共有フォルダにあるExcelを開く
Excel(エクセル)
-
VBAでサーバーにアクセスするにはどうすればいいの?
Access(アクセス)
-
VBAでサーバー上のファイルを開く
Excel(エクセル)
-
-
4
会社のネットワーク上のファイルを開けない こんにちわ 今大変困ってます 会社のネットワーク上のファイ
Visual Basic(VBA)
-
5
VBA ネットワーク上のファイルでカレントフォルダを取得するには?
Visual Basic(VBA)
-
6
VBAでネットワークコンピュータのファイルにアクセスできない(XL2000)
Access(アクセス)
-
7
ネットワーク上にある共有ファイルのVBAエラー
Excel(エクセル)
-
8
エクセル(VBA)でWindowsのサインイン情報(パスワード)と照合可能か
Windows 10
-
9
VBAで保存しないで閉じると空のBookが残る
Excel(エクセル)
-
10
共有フォルダにアクセスする際のパスワード入力を自動化したい
Mac OS
-
11
エクセル:マクロ「Application.CutCopyMode = False」って?
Excel(エクセル)
-
12
VBAでインターネットに接続しているかの確認
Visual Basic(VBA)
-
13
VBA ファイルを開くダイアログでの初期表示にファイルサーバーを指定
Excel(エクセル)
-
14
WorkBooksをオープンさせずにシートにコピーしたい【EXCEL VBA】
Excel(エクセル)
-
15
VBAでブックを非表示で開いて処理して閉じる方法
Excel(エクセル)
-
16
VBAでファイルを開くときにファイル名でワイルドカードを使用したいです
その他(プログラミング・Web制作)
-
17
VBAでエクセルシートを更新(リフレッシュ)する方法を教えて下さい。
Excel(エクセル)
-
18
VBAを使用して、外部サーバのファイルをコピーしてリネーム
Visual Basic(VBA)
-
19
ユーザーフォームを表示中にシートの操作をさせるには
Excel(エクセル)
-
20
ネットワーク上のファイルのコピー
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
人気Q&Aランキング
-
4
Twitterが凍結され異議申し立て...
-
5
大学定期試験過去問サイト「過...
-
6
Excelのセルにユーザー名...
-
7
Instagramで「リンクに問題があ...
-
8
メールアドレスで上付きのハイフン
-
9
メールアドレス 上バーの入力...
-
10
メールを返信したら、英語のメ...
-
11
Returned mail: see transcript...
-
12
Outlook
-
13
「@」(アットマーク)の無いメ...
-
14
メールのマナー編
-
15
インターネットカフェでCD書き...
-
16
CSVファイルを添付するときにパ...
-
17
CDにパスワードをかける
-
18
コスモ石油のアプリの機種変後...
-
19
エクセルで複数ファイルに同一...
-
20
runas実行した時にきかれるパス...
おすすめ情報
公式facebook
公式twitter