
No.4ベストアンサー
- 回答日時:
こんにちは。
vbs詳しくないですが、この辺りを参考にすればできるかも
『Visual Basic または VBA から ADO を Excel データで使用する』
http://support.microsoft.com/kb/257819/ja
http://hanatyan.sakura.ne.jp/index.html
『ADOを使ってExcelのシート名を高速に取得する』
http://hanatyan.sakura.ne.jp/dotnet/Excel05.htm
簡単なサンプルとしては下記。
Option Explicit
Const adSchemaTables = 20
Dim adoCn
Dim adoRs
Dim wbName
Dim shName
Dim x()
Dim j
Dim chk
On Error Resume Next
wbName = "c:\work\Book1.xls"
Set adoCn = CreateObject("ADODB.Connection")
adoCn.Open ("Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=" & wbName & ";" & _
"Extended Properties=Excel 8.0;")
Set adoRs = adoCn.OpenSchema(adSchemaTables)
Do Until adoRs.EOF
If adoRs Is Nothing Then Exit Do
shName = adoRs.Fields("TABLE_NAME").Value
chk = Right(shName, 1)
If chk Like "$" Or chk Like "'" Then
ReDim Preserve x(j)
x(j) = wbName & vbTab & Left(shName, Len(shName) - 1)
j = j + 1
End If
adoRs.MoveNext
Loop
adoRs.Close
Set adoRs = Nothing
adoCn.Close
Set adoCn = Nothing
WScript.echo Join(x, vbCrLf) & vbCrLf
'win2000/ado2.7
No.3
- 回答日時:
こんちには。
その質問では、ちょっと厳しいですね。
できないとは言わないけれども、Excelはあるのですか?
あるなら、VBScript を使う意義がないと思うのです。
>エクセルファイルのフルパスを記述したテキストファイルから読み込んで、
というのは、VBScript では、最初に、Argument を取得するところから入っていかなくてはならないと思います。それで、Text ファイルの拡張子をチェックして……とか。
しょせん、CreateObject で、Excelオートメーションを呼び出すぐらいなら、最初から、Excel VBAを使えばよいのではないでしょうか?それとも、Excelのファイルだけで本体がないので、バイナリ検索でもするというなら、また話は別ですが。(ちなみに、そのスキルは私にはありません)
No.2
- 回答日時:
お望みの回答かどうかはわかりませんが、何らかのヒントになればと思い書き込みました。
シート名の取得は、
シート名 = ActiveWorkbook.ActiveSheet.Name
でできますね。
いまあるブック内の全部のシート名を取得するためにこんな感じでやっていけばなにかいい方法がみつかるのでは?
Dim WSN As String, WSN2 As String 'シート名の変数の定義
Dim i As Integer, j As Integer
i = Worksheets.Count 'シート数をカウント
WSN2 = ActiveWorkbook.ActiveSheet.Name '最初に表示していたシート名を変数に格納
For j = 1 To i
WSN = Sheets(j).Name 'シート名を格納
Sheets(WSN).Select 'シートを選択(ここで選択したシートになんらかの処理ができますね。また、シートを選択する代わりにテキストファイルに書き込みなどすればよいでしょう)
Next
Sheets(WSN2).Select '最初に表示していたシートにもどる
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Excelマクロのエラーを解決した...
-
エクセルVBA Ifでシート名が合...
-
VBAを使いシート間で貼り付け
-
データを製品別に集計
-
複数シートに色付きセル(条件つ...
-
vba findnext で検索し一致した...
-
ExcelVBAから,引数を渡してVBs...
-
Excel VBA 一覧表のセル範囲を...
-
ExcelのVBAコードについて教え...
-
エクセル マクロ (For Next)
-
Excel 同一ブック内のシート(1)...
-
エクセルについて教えてください。
-
Excel VBAで検索した文字の場所...
-
ExcelのVBAを使い、複数シート...
-
月ごとに作成している日報ファ...
-
昨日のご教授頂いたVBAプログラ...
-
【VBA】シート内のセルの色での...
-
VBA)複数ファイル・シートのデ...
-
vba 教えてください。
-
Excel VBA マクロ あるフォルダ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excelマクロのエラーを解決した...
-
excelのマクロで該当処理できな...
-
実行時エラー1004「Select メソ...
-
特定の文字を含むシートだけマ...
-
XL:BeforeDoubleClickが動かない
-
【ExcelVBA】全シートのセルの...
-
実行時エラー'1004': WorkSheet...
-
ユーザーフォームに入力したデ...
-
【Excel VBA】Worksheets().Act...
-
エクセルVBA Ifでシート名が合...
-
Excel チェックボックスにチェ...
-
シートが保護されている状態で...
-
Excel VBA リンク先をシート...
-
ブック名、シート名を他のモジ...
-
ExcelのVBAのマクロで他のシー...
-
同じ作業を複数のシートに実行...
-
エクセルのシート名変更で重複...
-
VBA 検索して一致したセル...
-
【VBA】色のついたシート名を取得
-
VBAで指定シート以外の選択
おすすめ情報