Excel VBA質問箱 IV

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

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


69222 / 76734 ←次へ | 前へ→

【12030】Re:行選択
回答  Asaki  - 04/3/22(月) 16:05 -

引用なし
パスワード
   取り敢えず、マクロの記録で出来たコードを編集します。

>Selection.Copy
>Sheets("Sheet2").Select
>Range("A1").Select
>ActiveSheet.Paste
>Application.CutCopyMode = False
>Selection.Copy
>Workbooks.Add
>ActiveSheet.Paste
>Application.CutCopyMode = False
>ActiveWorkbook.SaveAs Filename:= _
>  "C:\Documents and Settings\g0238\My Documents\Book2.xls", FileFormat:= _
>  xlNormal, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False _
>  , CreateBackup:=False
>
>ActiveWindow.Close


Selection.Copy
Workbooks.Add
ActiveSheet.Paste
Application.CutCopyMode = False
ActiveWorkbook.SaveAs Filename:= _
  "C:\Documents and Settings\g0238\My Documents\Book2.xls", FileFormat:= _
  xlNormal, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False _
  , CreateBackup:=False
ActiveWindow.Close

次に、コピーする領域は Selection ではありませんので、この部分を直します。
簡単のために、ワークシートオブジェクトを変数に格納します。
変数の宣言とデータの設定処理を追加します。
Dim sh As Worksheet
Set sh = ThisWorkbook.ActiveSheet

これらを使って
>Selection.Copy
>Workbooks.Add
>ActiveSheet.Paste
>Application.CutCopyMode = False

Workbooks.Add
sh.Range(行).Copy Destination:=ActiveSheet.Cells(1, 1)

これをぴかる さんのコードとあわせて、
Sub Test()

Dim カウント As Integer
Dim 文字 As String
Dim 行 As String
Dim i  As Long
Dim sh As Worksheet

  Set sh = ThisWorkbook.ActiveSheet
  
  カウント = 0
  文字 = InputBox("データを入力して下さい。")
  For i = 1 To Range("A2").End(xlDown).Row
    If Range("A" & i).Text = 文字 Then
      If カウント = 0 Then
        行 = i & ":" & i
        カウント = 1
      Else
        行 = 行 & "," & i & ":" & i
      End If
    End If
  Next
  If カウント = 1 Then
'    Range(行).Select
  
    Workbooks.Add
    sh.Range(行).Copy Destination:=ActiveSheet.Cells(1, 1)
    ActiveWorkbook.SaveAs Filename:= _
      "C:\Documents and Settings\g0238\My Documents\Book2.xls", FileFormat:= _
      xlNormal, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False _
      , CreateBackup:=False
    ActiveWindow.Close
  Else
    MsgBox "該当行無しです。"
  End If

End Sub

2 hits

【12023】行選択 Hm 04/3/22(月) 13:30 質問
【12024】Re:行選択 Asaki 04/3/22(月) 14:08 回答
【12025】Re:行選択 ぴかる 04/3/22(月) 14:54 回答
【12026】Re:行選択 Hm 04/3/22(月) 14:58 質問
【12027】Re:行選択 Asaki 04/3/22(月) 15:08 回答
【12028】Re:行選択 Hm 04/3/22(月) 15:27 質問
【12030】Re:行選択 Asaki 04/3/22(月) 16:05 回答
【12032】Re:行選択 Asaki 04/3/22(月) 16:44 回答
【12036】Re:行選択 Hm 04/3/22(月) 17:02 質問
【12037】Re:行選択 Asaki 04/3/22(月) 17:08 回答
【12039】Re:行選択 ぴかる 04/3/22(月) 17:15 発言
【12041】Re:行選択 Asaki 04/3/22(月) 17:16 発言
【12048】Re:行選択 Hm 04/3/22(月) 17:48 お礼

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