[ruby-list:50194] Re: [質問] Win32OLE Excel ネットワーク上のファイルOpen失敗
From:
"YAMAGATA, Isao" <isao_yamagata@...>
Date:
2015-07-02 05:43:37 UTC
List:
ruby-list #50194
山縣です。
> ? ファイル名またはパスが存在しません。
> ? ファイルが他のプログラムによって使用されています。
> ? 保存しようとしているブックと同じ名前のブックが現在開かれています。
> HRESULT error code:0x80020009
http://qiita.com/t_oginogin/items/ddbeaac0a7e407dfd3c4
ここで、同じ現象が紹介されていて解決方法も載っていますが、
参考になりませんかね?
以上
--------------------
〆____________________________________________________________
差出:<yamataka@u08.itscom.net>
宛先:Ruby users \\(Japanese\\) <ruby-list@ruby-lang.org>
日付:Thu, 02 Jul 2015 14:05:31 +0900
件名:[ruby-list:50193] Re: [質問] Win32OLE Excel ネットワーク上のファイルOpen失敗
--------------------
山口です。
> 成田と申します。
>
> \は\\と書かなければならないので\\というのは\\\\となるという
> 事はないでしょうか?
>
> あてずっぽうで申し訳ありませんがご確認いただけないでしょうか。
成田さん、ご教示ありがとうございます。
念の為、環境は、
CYGWIN_NT-6.2 JPC20156460 2.0.4(0.287/5/3) 2015-06-09 12:22 x86_64
Cygwin
ruby 2.2.2p95 (2015-04-13 revision 50295) [x86_64-cygwin]
です。
#! /bin/ruby
# coding: cp932
require 'win32ole'
def getAbsolutePath filename
fso = WIN32OLE.new('Scripting.FileSystemObject')
return fso.GetAbsolutePathName(filename)
end
anet_file = getAbsolutePath('\\\\A.B.C.D\yama\tmp\net.xlsx')
excel = WIN32OLE.new('Excel.Application')
excel.visible = true
net_workbook = excel.workbooks.open(anet_file)
で、\\\\A.B.C.D のように、指定しましたが、
yama@JPC20156460:/cygdrive/c/Temp$ ./tako.rb
./tako.rb:16:in `method_missing': (in OLE method `open': ) (
WIN32OLERuntimeError)
OLE error code:FFFFFFFF800A03EC in Microsoft Excel
ファイル '\\A.B.C.D\yama\tmp\net.xlsx' にアクセスできません。次の
いずれかの理由が考えられます。
? ファイル名またはパスが存在しません。
? ファイルが他のプログラムによって使用されています。
? 保存しようとしているブックと同じ名前のブックが現在開かれています。
HRESULT error code:0x80020009
Exception occurred.
from ./tako.rb:16:in `<main>'
の様に、エラーになってしまいます。
↑____________________________________________________________