Excel VBA質問箱 IV

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

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


19996 / 76736 ←次へ | 前へ→

【62165】Re:マクロのシート名を変更する方法ってありますか?
回答  Hirofumi  - 09/6/25(木) 18:59 -

引用なし
パスワード
   「間取わけ」の元"Sheet1"と成っていた所を引数として外に出し
実行する場合、以下の様に別のプロシージャ(例、「Sub Main_1」、「Sub Main_2」)から
引数とし変更したいシート名を与えて呼び出します

尚、元のコードが自動記録そのままの様なコードなので
多分こうなるのではないかと言う推測で直して居ますので
実際に同じ様に動くのかは、確信の無い所です

Option Explicit

Public Sub Main_1()

  '「間取わけ」プロシージャにシート名を引数として与え
  '呼び出す
  間取わけ "Sheet1"
  
End Sub

Public Sub Main_2()

  '「間取わけ」プロシージャにシート名を引数として与え
  '呼び出す
  間取わけ "Sheet2"
  
End Sub

Private Sub 間取わけ(strSheetname As String)

  With Sheets(strSheetname).Range("A1")
    .AutoFilter Field:=9, Criteria1:="ワンルーム"
    .CurrentRegion.Copy Destination:=Sheets("ワンルーム").Range("A1")
    Application.Intersect(.CurrentRegion, .CurrentRegion.Offset(1)).EntireRow.Delete
'    .AutoFilter
    '
    .AutoFilter Field:=8, Criteria1:="1"
    .CurrentRegion.Copy Destination:=Sheets("1部屋").Range("A1")
    Application.Intersect(.CurrentRegion, .CurrentRegion.Offset(1)).EntireRow.Delete
'    .AutoFilter
    '
    .AutoFilter Field:=8, Criteria1:="2"
    .CurrentRegion.Copy Destination:=Sheets("2部屋").Range("A1")
     Application.Intersect(.CurrentRegion, .CurrentRegion.Offset(1)).EntireRow.Delete
'    .AutoFilter
    '
    .AutoFilter Field:=8, Criteria1:="3"
    .CurrentRegion.Copy Destination:=Sheets("3部屋").Range("A1")
    Application.Intersect(.CurrentRegion, .CurrentRegion.Offset(1)).EntireRow.Delete
    .AutoFilter
    '
    .CurrentRegion.Copy Destination:=Sheets("4部屋").Range("A1")
    .CurrentRegion.EntireRow.Delete
  End With
  
  With Sheets("4部屋")
    .Cells.Sort _
        Key1:=.Range("V1"), Order1:=xlDescending, _
        Header:=xlGuess, OrderCustom:=1, MatchCase:=False, _
        Orientation:=xlTopToBottom, SortMethod:=xlPinYin, _
        DataOption1:=xlSortNormal
  End With
  
  With Sheets("3部屋")
    .Range("A1").CurrentRegion.Sort _
        Key1:=.Range("A2"), Order1:=xlDescending, _
        Header:=xlYes, OrderCustom:=1, MatchCase:=False, _
        Orientation:=xlTopToBottom, SortMethod:=xlPinYin, _
        DataOption1:=xlSortNormal
  End With
  
  With Sheets("2部屋")
    .Range("A1").CurrentRegion.Sort _
        Key1:=.Range("A2"), Order1:=xlDescending, _
        Header:=xlYes, OrderCustom:=1, MatchCase:=False, _
        Orientation:=xlTopToBottom, SortMethod:=xlPinYin, _
        DataOption1:=xlSortNormal
  End With
  
  With Sheets("1部屋")
    .Range("A1").CurrentRegion.Sort _
        Key1:=.Range("A2"), Order1:=xlDescending, _
        Header:=xlYes, OrderCustom:=1, MatchCase:=False, _
        Orientation:=xlTopToBottom, SortMethod:=xlPinYin, _
        DataOption1:=xlSortNormal
  End With
  
  With Sheets("1部屋")
    With .Range("A1")
      .AutoFilter Field:=9, Criteria1:="1LDK"
      .CurrentRegion.Copy Destination:=Sheets("1LDK").Range("A1")
      Application.Intersect(.CurrentRegion, .CurrentRegion.Offset(1)).EntireRow.Delete
      .AutoFilter
    End With
    .Cells.Sort _
        Key1:=.Range("V1"), Order1:=xlDescending, _
        Header:=xlGuess, OrderCustom:=1, MatchCase:=False, _
        Orientation:=xlTopToBottom, SortMethod:=xlPinYin, _
        DataOption1:=xlSortNormal
  End With

  With Sheets("1LDK")
    .Range("A1").CurrentRegion.Sort _
        Key1:=.Range("A2"), Order1:=xlDescending, _
        Header:=xlYes, OrderCustom:=1, MatchCase:=False, _
        Orientation:=xlTopToBottom, SortMethod:=xlPinYin, _
        DataOption1:=xlSortNormal
  End With
  
  With Sheets("ワンルーム")
    With .Range("A1").CurrentRegion
      .Sort _
          Key1:=.Range("V2"), Order1:=xlDescending, _
          Header:=xlYes, OrderCustom:=1, MatchCase:=False, _
          Orientation:=xlTopToBottom, SortMethod:=xlPinYin, _
          DataOption1:=xlSortNormal
    
      .Copy Destination:=Sheets("????").Range("A1")
    End With
  End With

End Sub

0 hits

【62156】マクロのシート名を変更する方法ってありますか? じゅんこ 09/6/25(木) 13:21 質問
【62159】Re:マクロのシート名を変更する方法ってあ... Hirofumi 09/6/25(木) 15:01 発言
【62161】Re:マクロのシート名を変更する方法ってあ... じゅんこ 09/6/25(木) 16:00 発言
【62165】Re:マクロのシート名を変更する方法ってあ... Hirofumi 09/6/25(木) 18:59 回答
【62166】Re:マクロのシート名を変更する方法ってあ... じゅんこ 09/6/25(木) 19:36 お礼
【62167】Re:マクロのシート名を変更する方法ってあ... Hirofumi 09/6/25(木) 19:51 回答
【62168】Re:マクロのシート名を変更する方法ってあ... Hirofumi 09/6/25(木) 23:22 回答
【62160】Re:マクロのシート名を変更する方法ってあ... イブX 09/6/25(木) 15:10 発言
【62162】Re:マクロのシート名を変更する方法ってあ... じゅんこ 09/6/25(木) 16:16 発言

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