こんばんは、
ここ数か月、VBA を使用して多数のレポートを自動化する方法を学んでいます。このサイトは非常に役に立ちました。私は多くのことを行う方法を理解することができましたが、この問題の解決策はまだわかりません. このステップを除いて、この特定のレポートを完全に自動化した比較的複雑なマクロがあります。これを理解できれば、レポートを完全に自動化できます。
システムは、スクラブしてレポート テンプレートに追加する必要がある月の新しいデータを含む .xls 形式の生データ ファイルを生成します。列 X には商品の説明が含まれていますが、データの行の多くには受け入れられない商品の説明が含まれています。これらの行を別のワークシートにコピーし、他の人に送信して正しい説明を見つける必要があります。メイン レポート テンプレートで、許容可能な商品説明のリストを作成しました。生データ ファイル フィルタを使用して、許容リストにない列 X の値を持つ行がすべて表示されるようにしたいと考えています。許容可能な説明が既に含まれている行は非表示になります。
フィルターの操作、マクロの記録、コードの操作を試みましたが、うまくいきませんでした。アクションを記録すると、次のようになります。配列の先頭にあるアイテムのいくつかは、受け入れ可能な説明 (意味のあるもの) の例です。最後のランダムなものは、表示したいアイテムのタイプの例です。これらは調査して手動で修正する必要があります。
Sub hiderows()
Windows("stop level data.xls").Activate
Rows("1:1").Select
Selection.AutoFilter
ActiveSheet.Range("$A$1:$AB$1290").AutoFilter Field:=24, Criteria1:=Array( _
"Cotton", "Covers", "Displays", "Fabric", "Fasteners", "Fiber", "Fiber Rolls", _
"Fibers", "Foam", "Foam Rolls", "Frames", "Labels", "Latex", "Lumber", "Machines",_
"Mattresses", "Pads", "Plastic", "PO #Avi", "PO #P0005557/SO #3203687", _
"PO #P0005615/SO #3203693", "PO #P0007297/SO#3203828", "Rolls", "Serta", "Springs"_
, "T000216", "T000247", "T000269", "T000270", "T000278", "T000286", "T000294", _
"T000296", "Tape", "Thread", "Tick", "Ticking", "Transfer from", "Wood", _
"="), Operator:=xlFilterValues
End Sub
最初のステップとして、さまざまな方法で = の代わりに <> をプラグインして行を表示するのではなく非表示にする上記のコードを取得しようとしましたが、うまくいきませんでした。私が本当にやりたいことは、特定の行の値が次の値と等しくないWindows("Stop level data.xls")
場合にシートをフィルタリングすることですcolumn X
Windows("master template.xlsm").Sheets("lookups").Range("AE2:AE100")
お時間をいただきありがとうございます。私はこれと戦って数え切れないほどの時間を費やしてきましたが、実際には解決策に近づいていません.