Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


4929 / 76735 ←次へ | 前へ→

【77421】Re:あるファイルの中身をシートごとにわけて入力する。
回答  ウッシ  - 15/9/29(火) 9:05 -

引用なし
パスワード
   こんにちは

こんな感じでしょうか?

Sub test()
  Dim f As Variant
  Dim b As Workbook
  Dim t As Workbook
  Dim i As Long
  Dim j As Long
  Dim a As Areas
  
  f = Application.GetOpenFilename("読み込みファイル (*.*), *.*", , , , False)
  If f = False Then Exit Sub
  
  Workbooks.OpenText Filename:= _
    f, Origin:=932, _
    StartRow:=1, DataType:=xlDelimited, TextQualifier:=xlDoubleQuote, _
    ConsecutiveDelimiter:=False, Tab:=True, Semicolon:=False, Comma:=True, _
    Space:=False, Other:=False, FieldInfo:=Array(Array(1, 1), Array(2, 1), Array( _
    3, 1)), TrailingMinusNumbers:=True
    
  Set b = ActiveWorkbook
  Set t = ThisWorkbook
  Set a = b.Worksheets(1).UsedRange.SpecialCells(xlCellTypeConstants).Areas
  
  j = 1
  For i = 1 To a.Count
    If a(i).Cells(1, 1) Like "No*" Then
      If j < 7 Then
        t.Worksheets("Sheet" & j).Range("A5").EntireRow.Resize(Rows.Count - 5).ClearContents
        a(i).Offset(1).Copy t.Worksheets("Sheet" & j).Range("A5")
        j = j + 1
      ElseIf j = 7 Then
        a(i).Offset(1).Copy t.Worksheets("Sheet" & j).Range("A" & Rows.Count).End(xlUp).Offset(1)
        j = j + 1
      Else
        Exit For
      End If
    End If
  Next
  
  b.Close False
  
End Sub

0 hits

【77418】あるファイルの中身をシートごとにわけて入力する。 カイト 15/9/29(火) 0:06 質問[未読]
【77419】Re:あるファイルの中身をシートごとにわけ... ウッシ 15/9/29(火) 8:08 質問[未読]
【77420】Re:あるファイルの中身をシートごとにわけ... カイト 15/9/29(火) 8:41 発言[未読]
【77421】Re:あるファイルの中身をシートごとにわけ... ウッシ 15/9/29(火) 9:05 回答[未読]
【77422】Re:あるファイルの中身をシートごとにわけ... カイト 15/9/29(火) 12:20 発言[未読]
【77423】Re:あるファイルの中身をシートごとにわけ... ウッシ 15/9/29(火) 12:30 回答[未読]
【77424】Re:あるファイルの中身をシートごとにわけ... カイト 15/9/29(火) 20:00 お礼[未読]

4929 / 76735 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free