[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『マクロでの共有ネットワーク上のフォルダ指定方法』(はな)
大変困っております。
ご教示ください。
よろしくお願い致します。
以前、多岐にわたりご教示頂いたのですが、
会社のPCがwindowsXPからwindows7に変更となり、Officeも2003から2010にアップグレードされた関係か下記のコードでは共有ネットワーク上のフォルダが指定出来なくなったようなのでご教示頂きたくよろしくお願い致します。
Const BIF_RETURNNONLYFSDIRS = &H1 'ディレクトリのみ選択可 Const BIF_EDITBOX = &H10 'アイテム名入力用のEdit_boxを表示
'ブックの選択 ff = Application.GetOpenFilename("Excelブック,*.xls*", , "担当者別に振り分けたいファイルを選んでください") If ff = False Then Exit Sub 'キャンセルボタン
'保存フォルダの選択 hWnd = Application.hWnd Set Shell = CreateObject("Shell.Application") Set fd = Shell.BrowseForFolder(hWnd, "保存フォルダを選んでください", _ BIF_RETURNNONLYFSDIRS Or BIF_EDITBOX) If fd Is Nothing Then Exit Sub 'キャンセルボタン
svPath = fd.Items.Item.Path & "\"
以前ご回答頂いた質問です。
(はな)
Win7、Excel2010で試してみましたが、ネットワーク上のフォルダの指定は できますけどねえ!!
問題は、Application.GetOpenFilename ですか? それともShell.BrowseForFolderこっちですか?
更に現象を詳しく記述されると 新しい投稿があるかもしれませんよ!!
ichinose
ご回答頂きまして有難うございます。
問題はといいますと、
Shell.BrowseForFolderのダイアログ表示ですと、
ネットワーク上のフォルダに進めないようです。
できればApplication.GetOpenFilenameの指定のようにデスクトップからネットワークの指定フォルダに選んでいければと思うのですが、
勉強不足で修正することができず困っております。
(はな)
>ネットワーク上のフォルダに進めないようです。 提示されたコードで私の方では、可能ですけどねえ??
試しに以下のコードでは いかがですか?
Sub test() With Application.FileDialog(msoFileDialogFolderPicker) .Title = "フォルダ選択" If .Show Then
MsgBox .SelectedItems(1) End If End With End Sub
試してみてください
ichinose
ご回答頂きまして有難うございます。
ネットワーク上のフォルダに進めました!
有難うございます。
ですが、続きのコードが切れてしまったので、
処理がそのまま終了してしまいました。
(はな)
>続きのコードが切れてしまったので、 >処理がそのまま終了してしまいました。
どういうことですか? よくわかりません。 まさか。提示したコードを元々のコード内に反映できない ということではないですよね? もし、そうだとしたら、私は、「はいどうぞ、これで作動しますよ」というような コードを作ってあげるような提示はなるべく今はしないようにしています。
提示したコードの意味を調べたり、FileDialogオブジェクトのプロパティやメソッドを調べたり して、FileDialogオブジェクトをどのようにすれば、選択したフォルダ名が得られるかを研究してください。
調べても不明な点があるなら、もう少し焦点を絞ったご質問を投稿してみてください。
ichinose
返信が大変遅くなり申し訳ございません。
ご回答頂きまして有難うございました。
中途半端なコメントかつおこがましく大変申し訳ございませんでした。
(はな)
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.