![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?5a7ff87)
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で質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) エクセルのマクロについて教えてください。 5 2023/07/14 12:49
- その他(プログラミング・Web制作) Pythonを勉強しています。 5 2023/08/25 09:51
- Excel(エクセル) 【マクロ】マクロが保存されているエクセルとは、別のエクセルのオートフィルターのしぼりをクリアーしたい 2 2022/12/24 08:36
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2023/07/16 14:36
- Visual Basic(VBA) エクセルのマクロについて教えてください。 1 2023/08/03 11:27
- Excel(エクセル) 記録マクロのみでできますか? 7 2022/08/07 20:38
- その他(プログラミング・Web制作) Windowsのマクロプログラムで、こんなことできますか? 3 2022/06/28 14:30
- Excel(エクセル) マクロか関数で処理したいのですが、教えて頂けませんか。 8 2022/10/31 15:18
- Excel(エクセル) CSVファイルでVBAを動かす方法 3 2023/04/04 10:22
- Excel(エクセル) 【マクロ】マクロが保存されているエクセルとは、別のエクセルブックの全シートの非表示列を再表示したい 1 2022/12/24 20:48
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
excelのマクロで該当処理できな...
-
別のシートから値を取得するとき
-
ユーザーフォームに入力したデ...
-
【ExcelVBA】全シートのセルの...
-
同じ作業を複数のシートに実行...
-
実行時エラー'1004': WorkSheet...
-
エクセル・マクロ シートの非...
-
【Excel VBA】Worksheets().Act...
-
特定の文字を含むシートだけマ...
-
実行時エラー1004「Select メソ...
-
【VBA】特定の文字で改行(次の...
-
ブック名、シート名を他のモジ...
-
Access エクセルシート名変更
-
エクセルのシート名変更で重複...
-
Excelマクロのエラーを解決した...
-
エクセルのマクロでアクティブ...
-
XL:BeforeDoubleClickが動かない
-
エクセルVBA 変数への代入がう...
-
コマンドボタンをクリックでシ...
-
Excel VBA 複数行を数の分だけ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
別のシートから値を取得するとき
-
VBAで大量のファイルをシート名...
-
ユーザーフォームに入力したデ...
-
excelのマクロで該当処理できな...
-
【ExcelVBA】全シートのセルの...
-
同じ作業を複数のシートに実行...
-
VBA 存在しないシートを選...
-
Excelマクロのエラーを解決した...
-
特定の文字を含むシートだけマ...
-
実行時エラー'1004': WorkSheet...
-
XL:BeforeDoubleClickが動かない
-
シートが保護されている状態で...
-
実行時エラー1004「Select メソ...
-
【Excel VBA】Worksheets().Act...
-
ブック名、シート名を他のモジ...
-
エクセルのシート名変更で重複...
-
ExcelのVBAのマクロで他のシー...
-
Excel VBA 複数行を数の分だけ...
-
エクセルのマクロについて教え...
-
VBA 最終行まで数式をコピーする
おすすめ情報