[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『IPアドレスを使ってファイルを開く』(SSS)
仕事でIPアドレスを使ってファイルを開くことを考えています。
テスト的に自身のパソコンのIPアドレスでフォルダを開こうと試みましたが自身のIPアドレスでは無効になるのでしょうか?
それともコードが間違っているのでしょうか?
Dim Obj As Object
Set Obj = CreateObject("Wscript.Shell")
Obj.Run ("NET USE \\***.***.*.*\***\***\***\****")
CreateObject("Shell.Application").Open "\\***.***.*.*\***\***\***\****"
< 使用 Excel:Excel2019、使用 OS:Windows10 >
ネットワークアドレス使う場合、共有フォルダに設定してないと開かないと思いますけど、ご確認されましたか? csvを既定のプログラムで開く場合、こんな感じで開けましたよ Sub test() With CreateObject("WScript.Shell") .Run "\\12.345.67.89\共有フォルダ\test.csv" End With End Sub
(稲葉) 2023/01/31(火) 12:45:36
今回質問で書いたものがコピペして使ったんですがNET USEってのは必要ですか?NET USEってのがどういう指示ですか?ネットワークアドレスを使うていうそのままですか?NET USEがないコードもあり今回質問させていただきました。
(SSS) 2023/01/31(火) 13:46:05
私も詳しくないので何とも言えませんけど Net Useってドライブレターの割り付けですよね? 結論としては必要ないような。
理由は、やりたいこと =ネットワークアドレスを指定してファイルを開くこと =ローカル環境(ドライブレター)に依存せず、ファイルにアクセスする と、勝手に思っているのですが合ってます?
話をコードに戻すと、ファイルの存在有無等をチェックするなら、 DirかFileSystemObject(FSO)を使ったほうがコーディングしやすいと思います。
以下FileSystemObjectの例です。
Sub test() Dim fso As Object Dim wb As Workbook Const myPath As String = "\\12.345.67.89\共有フォルダ\test.csv" Set fso = CreateObject("Scripting.FileSystemObject") If fso.FileExists(myPath) = True Then On Error Resume Next Set wb = fso.getfilename(myPath) On Error GoTo 0 If wb Is Nothing Then Set wb = Workbooks.Open(myPath) Else MsgBox "同じファイル名を開いています。閉じてから実行してください" Exit Sub End If Else 'ファイルがなければ、処理を中断 Exit Sub End If
With wb 'ここにファイルに対する処理を記載する End With End Sub
(稲葉) 2023/01/31(火) 16:39:10
それとテキストファイルを開くことをしました。ファイルに対する処理はしていないのですが、Excel形式でテキストファイルが開きました。最終的にはこうしたかったのですが自動的にそういう形式で開くのでしょうか?
(SSS) 2023/01/31(火) 18:01:43
> Set wb = Workbooks.Open(myPath) ワークブックで開くようにしているので、テキストファイルは開けますが、docとかは現状のままだと無理です。
テキストファイル(txt)を開いて、エクセルに転記又は計算等でしたら、FileSystemObjectのTextStreamや、Openステートメントが一般的かと思います。 https://vbabeginner.net/howto-use-filesystemobject-textstream/ https://excel-ubara.com/excelvba1/EXCELVBA416.html
メモ帳などで開く場合は、Shellを使うとよいかもしれないです。(ただし、これだと中身が取りにくい) Shell "notepad " & myPath https://excel-ubara.com/excelvba1/EXCELVBA422.html
(稲葉) 2023/01/31(火) 18:18:52
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.