
先ほど同じ質問をさせていただいて解決策ご教示頂いたのですが、また同じエラーでつまづいてしまいました。
Dim Csv_ws As Worksheet
Set Csv_ws = Workbooks("C:\Users\Administrator\Desktop\data2.csv").Worksheets(1)
実行すると「インデックスが有効範囲にありません」とエラーが出てしまいます。
先ほどはcsvを開いていなかった事がエラーの原因だったのですが、今回はdata2.csvは開いた状態です。
一度閉じて、
C:\Users\Administrator\Desktop\data2.csv
をエクスプローラにペーストしEnterを押すとdata2.csvが開くのでフルパスも記述ミスはないと思われます。
data2.csvはダウンロードしてきたものです。
度々で恐縮なのですが解決策ご教示お願い致します。
No.1ベストアンサー
- 回答日時:
こんばんは、
既に開いていると言う事なので、
Workbooks("C:\Users\Administrator\Desktop\data2.csv")は
C:\Users\Administrator\Desktop\data2.csvと言うファイル名を指す事になるかと、この場合、
Windows("data2.csv").Activate とか
Workbooks("data2.csv").Activate とかになります。(アクティブにしている)
なので、
Set Csv_ws = Workbooks("Sheet1.csv").Worksheets(1)
で良いかと、思います。
VBAで他のファイルを操作する場合、開いて、閉じるなどの操作を
含めて行う事が多いです。対象ファイルを開くことで、開いたファイルがアクティブになる為、把握し易いからです。
ご質問とは、離れますが、参考まで
Sub nnn()
Dim Csv_ws As Worksheet
Dim Path As String
Path = CreateObject("WScript.Shell").SpecialFolders("Desktop")
With Workbooks.Open(Path & "\data2.csv") '開く
Set Csv_ws = .Sheets(1)
’メイン処理
’下記は、サンプル A1セルの値をマクロ実行ブックのA1セルに入力(抽出)
ThisWorkbook.ActiveSheet.Cells(1, 1) = Csv_ws.Cells(1, 1)
' .Close ’閉じる
End With
End Sub
CreateObject("WScript.Shell").SpecialFolders("Desktop")は、
デスクトップアドレスを取得しています。
ん?、勘違いしていたらごめんなさい。
ありがとうございます。
Set Csv_ws = Workbooks("data2.csv").Worksheets(1)
とシンプルに記述することで解決しました。
補足情報までわざわざコードを書いて説明して下さってありがとうございました。
No.3
- 回答日時:
> 今回はdata2.csvは開いた状態です。
どうやって開いてるの?
ダブルクリックで開いてるなら、
・ダブルクリックで開かれたdata2.csv
・C:\Users\Administrator\Desktop\data2.csv
を同じファイルと認識していないとか。
Workbooks.Open Filename:="C:\Users\Administrator\Desktop\data2.csv"
で開いてみるとかでは?
> Set Csv_ws = Workbooks("C:\Users\Administrator\Desktop\data2.csv").Worksheets(1)
csvファイルにはワークシートって無いですから、どうだろう?
~.xlsファイルでは?
#手元にExcel無くて確認出来ないですけど。
ファイルは
Workbooks.Open Filename:="C:\Users\Administrator\Desktop\data2.csv"
で開いています。
フルパスではなくファイル名だけ記述することで解決しました。
ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(プログラミング・Web制作) データ解析ソフトRでのファイル入力read.csvがエラーになります 7 2022/03/27 22:11
- Excel(エクセル) エクセルのVBAについて とあるサイトのコードを参考に、CSVの文字化けを直すVBAを作成しているの 7 2022/11/04 14:15
- その他(開発・運用・管理) Python CSVファイルについて 2 2023/01/04 21:19
- Visual Basic(VBA) エクセルVBAについて 8 2022/07/13 22:41
- その他(プログラミング・Web制作) pythonのこのエラーがわかりません 3 2022/11/16 14:54
- Excel(エクセル) エクセルでcsvファイルを開いてVBAを使いたい 7 2022/04/28 11:12
- Visual Basic(VBA) 複数のcsvファイルをExcelに一括変換したい 2 2023/03/03 12:44
- Visual Basic(VBA) 複数csvを横に追加していくマクロについて 2 2023/04/25 09:19
- Excel(エクセル) CSVファイルでVBAを動かす方法 3 2023/04/04 10:22
- Visual Basic(VBA) VBAで出力したCSVファイルの先頭にカンマを挿入したい 5 2022/10/14 12:20
このQ&Aを見た人はこんなQ&Aも見ています
-
【ExcelVBA】インデックスが有効範囲にありません。の理由が分かりません
Visual Basic(VBA)
-
エクセル:マクロ「Application.CutCopyMode = False」って?
Excel(エクセル)
-
特定のPCだけ動作しないVBAマクロがあります。その理由は?
Visual Basic(VBA)
-
-
4
EXCEL VBAで全選択範囲の解除
Excel(エクセル)
-
5
メッセージボックスのOKボタンをVBAでクリックさせたい
Visual Basic(VBA)
-
6
VBAでファイルを開くときにファイル名でワイルドカードを使用したいです
その他(プログラミング・Web制作)
-
7
VBAで保存しないで閉じると空のBookが残る
Excel(エクセル)
-
8
B列の最終行までA列をオートフィル
Visual Basic(VBA)
-
9
UserForm1.Showでエラーになります。
工学
-
10
Application.ScreenUpdating = Falseが効きません
Visual Basic(VBA)
-
11
ACCESS VBA インデックスが有効範囲ではありません。の解決方法をご教示下さい。
Visual Basic(VBA)
-
12
VBA 変数名に変数を使用したい。
Visual Basic(VBA)
-
13
VBA シートをコピーする際に Copyメソッドは失敗しましたのエラーが出てしまいます
Visual Basic(VBA)
-
14
VBA 別ブックからコピペしたいのですが、軽くしたいです
Visual Basic(VBA)
-
15
VBA:ワークブックを変数でActiveにしたいのですが・・
Excel(エクセル)
-
16
エクセルのエラーメッセージ「400」って?
Visual Basic(VBA)
-
17
Excel:マクロを消す方法教えてください。
Excel(エクセル)
-
18
VBA マクロ実行時エラー’1004RangeクラスのPasteSpecialメソッドが失敗
Access(アクセス)
-
19
「Columns(A:C")」の列文字を数字にして表記したい"
Excel(エクセル)
-
20
エクセルマクロで特定の範囲が空白という条件
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Excelマクロ 空白セルを無視し...
-
VBAでcsvファイルもシートもあ...
-
【ExcelVBA】300万件越えCSVか...
-
ダブルコーテーション付きでCSV...
-
CSVデータの文字列置換
-
rubyを用いたCSVファイルの分割...
-
PowerShellからGhostscriptを動...
-
vbaマクロについて 次のような...
-
VB.NETでオブジェクトの内容を...
-
EXCEL→CSV保存時のダブルクォー...
-
シート1に日付と社員番号転記
-
【C#】 csvファイルをバイナリ...
-
pythonでリストをCSVに出力する...
-
ファイル名を変数で書きこむfwr...
-
VBAで複数のCSVからレコードセ...
-
複数のファイルをまたぐエクセ...
-
CSVファイルの比較と結果の取得...
-
VBAで文字列を引数とするアドイ...
-
iPhoneアプリ開発 ファイル書き...
-
パイソン文法で ファイルオープ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excelマクロ 空白セルを無視し...
-
【ExcelVBA】300万件越えCSVか...
-
VBAでcsvファイルもシートもあ...
-
ダブルコーテーション付きでCSV...
-
ファイル名を変数で書きこむfwr...
-
複数のファイルをまたぐエクセ...
-
バッチファイルでcsvファイルに...
-
【C#】 csvファイルをバイナリ...
-
PowerShellでファイルの連結方法
-
vbaマクロについて 次のような...
-
CSVで余計な空行が入る
-
IPアドレスのゼロパディング
-
バッチファイルでCSVの中身を仕...
-
PowerShellからGhostscriptを動...
-
CSVデータの文字列置換
-
VBAで複数のCSVからレコードセ...
-
pythonでリストをCSVに出力する...
-
EXCEL→CSV保存時のダブルクォー...
-
StringGridの中身をCSV形式で保...
-
VBAで文字列を引数とするアドイ...
おすすめ情報