Excel VBA質問箱 IV

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

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


87 / 13006 ツリー ←次へ | 前へ→

【78679】よろしくお願いいたします。 斉藤 16/12/16(金) 22:12 質問[未読]

【78684】Re:よろしくお願いいたします。 β 16/12/17(土) 7:06 発言[未読]

【78684】Re:よろしくお願いいたします。
発言  β  - 16/12/17(土) 7:06 -

引用なし
パスワード
   ▼斉藤 さん:

とりあえず Sample2 のほうの 重複の削除を AdvancedFilter に変更したものを。
xl2002 のAdvancedFilter(フィルターオプション)は、それ以前の xl2000 や
それ以降の xl2003等 とは、少し機能が異なる部分がありますので、どうなるか
わかりませんが。
でも、これでも、その下のコードで Sample と同じエラーになるはずです。

Sub Sample3()
  Dim c As Range
  Dim dic As Object
 
  Set dic = CreateObject("Scripting.Dictionary")
 
  With Sheets("Sheet1")
    For Each c In .Range("A1", .Range("A" & Rows.Count).End(xlUp))
      If Not dic.exists(c.Value) Then
        dic(c.Value) = c.EntireRow.Range("Q1").Value
      Else
        dic(c.Value) = dic(c.Value) & "," & c.EntireRow.Range("Q1").Value
      End If
    Next
  End With
 
  With Sheets("Sheet2")
    .Cells.ClearContents
    Sheets("Sheet1").Columns("A:P").AdvancedFilter Action:=xlFilterCopy, _
      CopyToRange:=.Range("A1"), Unique:=True
    .Range("Q1").Resize(dic.Count).Value = WorksheetFunction.Transpose(dic.items)
    .Select
  End With
  
End Sub

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