-1

私のプロセスは、ソース データであるhttps://app.box.com/s/2ieux0ws9c07k1d5x7rbの「ExcelReport」を開くことから始まります。次に、「jmmac2」で作業していたファイルを開き ます請求書。現在行っていることは、フィルター行 (Dim LastRow2 の直後の行) を介して実行されますが、データをフィルター処理するのではなく、すべての行を非表示にするため、次の行 (Set rngUniques...) は何も返しません。

理想的には、「エクスポート」は、クライアント name_invoice # によってそれぞれ名前が付けられた一連のワークシートに入力され、後続のデータが各請求書にドロップされます。各新しい請求書を開始するために使用される Sheet2 として空白の請求書テンプレートがあります。各請求書には、情報を新しい Outlook メッセージに転送するためのボタンがあり、送信されたことを示すためにタブを緑色にします。このワークブックの他のすべてのマクロは完全に機能しています。上記の問題を解決するのを手伝ってくれる人はいますか? 「CopyData」マクロにあります。

4

2 に答える 2

0

「Convert」シートから名前付き範囲「Criteria」を削除し、これを変更すると:

 Sheets("Convert").Range("K1:K" & LastRow).AdvancedFilter _
   Action:=xlFilterInPlace, CriteriaRange:=Range("K2:K" & LastRow), Unique:=True

これに:

Sheets("Convert").Range("K1:K" & LastRow).AdvancedFilter _
                      Action:=xlFilterInPlace, Unique:=True

それは私のために働きます。

于 2014-08-04T04:06:42.433 に答える
0

CopyData の 12 行目の範囲選択は、「K1:K」と LastRow ではなく、「K2:K」と LastRow である必要があると思います。

これを変更してみてください:

Sheets("Convert").Range("K1:K" & LastRow).AdvancedFilter _
   Action:=xlFilterInPlace, CriteriaRange:=Range("K2:K" & LastRow), Unique:=True

これに:

Sheets("Convert").Range("K2:K" & LastRow).AdvancedFilter _
   Action:=xlFilterInPlace, CriteriaRange:=Range("K2:K" & LastRow), Unique:=True
于 2014-08-05T20:12:59.297 に答える