Excel VBA質問箱 IV

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

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


51061 / 76738 ←次へ | 前へ→

【30552】Re:ファイル選択をキャンセルした際の抜け方
回答  Kein  - 05/10/30(日) 19:19 -

引用なし
パスワード
   Private Sub CommandButton1_Click()
  Dim FName As Variant, CAry As Variant, x As Variant
  Dim MyB As Workbook, TgB As Workbook
  Dim MyS As Worksheet
  Dim i As Long, j As Long
  
  With Application
    FName = _
    .GetOpenFilename("Excelファイル,*.xls,すべてのファイル,*.*", _
    MultiSelect:=True)
    If VarType(FName) = 11 Then Exit Sub
    '↑他には If Not IsArray(FName) Then という条件なども可能
    .ScreenUpdating = False
  End With
  On Error Resume Next
  Set MyB = Workbooks("出力フォーム.xls")
  If Err.Number <> 0 Then
    Set MyB = Workbooks _
    .Open(ThisWorkbook.Path & "\出力フォーム.xls")
    Err.Clear
  End If
  On Error GoTo 0
  Set MyS = MyB.Worksheets("Sheet1")
  CAry = Array(1, 2, 10, 14, 16)
  For Each x In FName
    Set TgB = Workbooks.Open(x)
    With TgB.Worksheets(1)
     NyS.Range("A6").Value = .Range("G1").Value
     MyS.Range("B6").Value = .Range("G2").Value
     For i = 0 To 4
       MyS.Range(MyS.Cells(6, i + 20), MyS.Cells(19, i + 20)) _
       .Value = _
       .Range(.Cells(17, CAry(i)), .Cells(30, CAry(i)).Value
     Next i
    End With
    TgB.Close False: Set TgB = Nothing
    MyB.SaveCopyAs Format(Now, "yy-mm-dd hh-mm-ss") & _
    " _" & CStr(i) & ".xls"
  Next     
  Set MyS = Nothing: Set MyB = Nothing  
End Sub

で、どうでしょーか ?

0 hits

【30551】ファイル選択をキャンセルした際の抜け方 kino 05/10/30(日) 18:28 質問
【30552】Re:ファイル選択をキャンセルした際の抜け方 Kein 05/10/30(日) 19:19 回答
【30553】Re:ファイル選択をキャンセルした際の抜け方 Kein 05/10/30(日) 19:20 発言
【30555】Re:ファイル選択をキャンセルした際の抜け方 kino 05/10/30(日) 21:04 質問
【30556】Re:ファイル選択をキャンセルした際の抜け方 かみちゃん 05/10/30(日) 21:13 発言
【30568】Re:ファイル選択をキャンセルした際の抜け方 kino 05/10/31(月) 2:25 お礼
【30559】Re:ファイル選択をキャンセルした際の抜け方 Kein 05/10/30(日) 21:38 発言

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