山口です。

> たしか、下記のcygwin用の絶対pathの取得を入れるとうまくいくかもしれない
です。
> http://magazine.rubyist.net/?0004-Win32OLE
> この辺りのコードです。
> fso = WIN32OLE.new('Scripting.FileSystemObject')
> net_file = fso.GetAbsolutePathName('\\roswell\share_data\net.xlsx')

ご教示ありがとうございます。

#! /bin/ruby
# coding: cp932

require 'win32ole'

def getAbsolutePath filename
   fso = WIN32OLE.new('Scripting.FileSystemObject')
   return fso.GetAbsolutePathName(filename)
end

alocal_file= getAbsolutePath('C:\Temp\local.xlsx')
anet_file = getAbsolutePath('\\A.B.C.D\yama\tmp\net.xlsx') 

excel  = WIN32OLE.new('Excel.Application')
excel.visible = true

local_workbook = excel.workbooks.open(alocal_file)
net_workbook   = excel.workbooks.open(anet_file)

で、試してみましたが、

anet_file = getAbsolutePath('\\A.B.C.D\yama\tmp\net.xlsx')  では、

 'C:\A.B.C.D\yama\tmp\net.xlsx' が見つかりません
と表示され、network上のファイルが、ローカルファイルとして取り扱われてい
るエラーメッセージが表示されます。

anet_file = getAbsolutePath('//A.B.C.D/yama/tmp/net.xlsx')
では、# \\A.B.C.D\yama\tmp\net.xlsx' にアクセスできません

と表示され、GetAbsolutePathName を用いても、残念ながら解決に至りませんで
した。