![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?5a7ff87)
No.4ベストアンサー
- 回答日時:
Close メソッド ヘルプより
使用例
次の使用例は、Book1.xls のブックを閉じます。内容の変更は保存しません。
Workbooks("BOOK1.XLS").Close SaveChanges:=False
次の使用例は、開かれているすべてのブックを閉じます。開かれているブックの内容が変更されている場合は、
確認のメッセージや、変更を保存するためのダイアログ ボックスが表示されます。
Workbooks.Close
No.3
- 回答日時:
ANo.2です。
>名前通りブックを読み取ることができずひとつ飛びになってしまったので何とか修正してみます。
End With
i = i + 1 '←削除
End If
>これから更に読み込むセルを指定したりすることは可能でしょうか?
Inputboxを調べてみる。(メソッドの方かな?)
この回答への補足
ありがとうございます。
下記のやり方が一番無難でしたがファイルを開きっぱなしにしてしまいます。
閉じるにはどの様に記述すればよいでしょうか?
Sub Bus()
Dim OurPath As String
OurPath = ThisWorkbook.Path & "C:\test\" '共通のPath
Workbooks.Open Filename:=OurPath & "Book2.xls" 'Book2を開く
ThisWorkbook.Sheets(1).Activate 'ThisWorkbookの1番目のSheetを選ぶ
'上記1番目のSheetのA1セルにBook2のSheet1のGセルの値を代入する
Range("A1").Value = Workbooks("Book2.xls").Sheets("Sheet1").Range("G7")
End Sub
No.2
- 回答日時:
詳細がよく分かりませんが。
Sub sample()
Dim myObj As Object
Dim ws As Worksheet
Dim fn As String, Fp As String
Dim i As Long, j As Integer
Application.ScreenUpdating = False
Set myObj = CreateObject("Shell.Application"). _
BrowseForFolder(0, "フォルダを選択してください", 0)
If myObj Is Nothing Then Exit Sub
Set ws = ActiveSheet 'アクティブなシート
Fp = myObj.Items.Item.Path & "\" '保存場所のパス
fn = Dir(Fp & "*.xls", 0)
With ws
.Range("A1").Value = "Book名"
.Range("B1").Value = "項目1"
.Range("C1").Value = "項目2"
.Range("D1").Value = "項目3"
.Range("E1").Value = "項目4"
End With
i = 2
Do Until fn = ""
If fn <> ThisWorkbook.Name Then
Cells(i, "A").Value = fn
With Application.Workbooks.Open(Fp & fn)
ws.Cells(i, "B").Resize(, 4).Value = _
.Worksheets(1).Range("A30").Resize(, 4).Value
i = i + 1
.Close SaveChanges:=False
End With
i = i + 1
End If
fn = Dir()
Loop
Application.ScreenUpdating = True
End Sub
こんな感じの事でしょうか?
ご参考まで。
この回答への補足
早速にご回答誠にありがとうございます。
名前通りブックを読み取ることができずひとつ飛びになってしまったので何とか修正してみます。
これから更に読み込むセルを指定したりすることは可能でしょうか?
色々探してはいますがなかなか見つかりません。
なんとか探してみます。
No.1
- 回答日時:
この回答への補足
ありがとうございます。
下記のやり方が一番無難でしたがファイルを開きっぱなしにしてしまいます。
閉じるにはどの様に記述すればよいでしょうか?
Sub Bus()
Dim OurPath As String
OurPath = ThisWorkbook.Path & "C:\test\" '共通のPath
Workbooks.Open Filename:=OurPath & "Book2.xls" 'Book2を開く
ThisWorkbook.Sheets(1).Activate 'ThisWorkbookの1番目のSheetを選ぶ
'上記1番目のSheetのA1セルにBook2のSheet1のGセルの値を代入する
Range("A1").Value = Workbooks("Book2.xls").Sheets("Sheet1").Range("G7")
End Sub
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) ファイル全てを .xlsm に変更したところ、プログラムが途中で落ちてしまっています 17 2022/12/07 12:03
- Excel(エクセル) エクセルのデータ整形について 3 2022/11/12 00:27
- Excel(エクセル) エクセルデーターの並び替え 5 2022/08/06 09:59
- Visual Basic(VBA) vbaのループ処理について 6 2022/05/06 15:35
- Excel(エクセル) 【マクロ】マクロが保存されているエクセルとは、別のエクセルブックの全シートの非表示列を再表示したい 1 2022/12/24 20:48
- その他(お金・保険・資産運用) 至急!【Wolt】各メニューの価格設定の簡単な計算方法 3 2023/03/05 11:58
- Visual Basic(VBA) マクロで最終行を取得したい 4 2023/05/28 12:14
- Excel(エクセル) エクセルの数式について ブック内の別シートの値の含まれたセルの個数を集計したい 全シート一覧のシート 1 2022/07/21 19:28
- Excel(エクセル) Excelのマクロを教えていただけないでしょうか? 1 2023/07/06 19:56
- Excel(エクセル) エクセルのマクロ作成について教えてください 5 2023/02/20 00:39
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Word2016でExcelデータを差込し...
-
【Excel VBA】CSV取込時、数字...
-
EXCELの列の幅
-
エクセルで電話番号にハイフン...
-
EXCELで2つのシートから一致し...
-
pdfの表をexcelにはりつけて計...
-
excelの列がいっぱいになり列を...
-
EXCELで不良率を出そうと思って...
-
VBAで他のシートの特定の列を検...
-
Excel 表の必要箇所だけを抜き...
-
エクセルの余白を0にしても列...
-
エクセルの列の非表示、削除に...
-
エクセルで表のある列を最初か...
-
EXCELで指定した範囲の切り取り...
-
エクセルで作成した表から明細...
-
エクセルで縦線のいっぱい入っ...
-
Excelでの在庫管理
-
表の一部のみを幅を保持したま...
-
エクセルの並べ変え
-
EXCEL2007で2つのシートのどっ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Word2016でExcelデータを差込し...
-
【Excel VBA】CSV取込時、数字...
-
EXCELで2つのシートから一致し...
-
EXCELの列の幅
-
Excel 表の必要箇所だけを抜き...
-
エクセルでページ毎の計をつけ...
-
pdfの表をexcelにはりつけて計...
-
EXCEL2007で2つのシートのどっ...
-
エクセルで前年同日・前月同日...
-
エクセルで電話番号にハイフン...
-
excelの列がいっぱいになり列を...
-
ExcelのIF関数について
-
エクセルVBAで複数列データを1...
-
エクセルシートの選択範囲をコ...
-
エクセルの複数ワークシートの...
-
EXCELで不良率を出そうと思って...
-
エクセルの余白を0にしても列...
-
Excelで縦割りを途中から増やす...
-
マクロ VBA 他のブックのデータ...
-
エクセルで2列以上のものを同時...
おすすめ情報