• 締切済み

VBA オートフィルタ後のセル色付け

いつも大変お世話になっております。 VBA初心者です。Excel2007、XPを使用しております。 データの状態ですが、 AからQ列まである顧客データ(1行目は見出し、2行目以降がデータ)を、 Sheet2へ参照で並び変えしてます。 Sheet2はAからM列になっており、こちらも1行目見出し、2行目以降データです。 見出しのみ色付けしており、このSheet2はデータを蓄積していってます。 Sheet1は新規データ貼付用 Sheet2は参照されたデータの蓄積 Sheet3はcsv保存用 目的は、Sheet2でオートフィルにより、色なしを表示し、2行目以降をコピー、 Sheet3へ値貼付、csv保存。値削除。 Sheet2の色なしを色付け(濃いグレー)。 以上の動作をしたいのですがうまくいかず、大変困っております。 お手数ですがご教授お願い致します。

みんなの回答

  • ap_2
  • ベストアンサー率64% (70/109)
回答No.1

「マクロの記録」だけで作れそうですが・・・ セルの選択は、「Alt+Shift+↓」みたいなキー操作を駆使すると、データ数に関係なく動かせますよ。 具体的に分からない点があれば、補足してください。

mitsunori32
質問者

補足

ありがとうございます! フィルタ後の行が変数な為、記録ではうまくいきません。 とりあえず記録したものが下記ですので、ご覧頂けますでしょうか。 Sub test() Sheets("Sheet2").Select Range("A1").Select Selection.AutoFilter ActiveSheet.Range("$A$1:$M$50").AutoFilter Field:=1, Operator:= _ xlFilterNoFill Rows("8:8").Select Range(Selection, Selection.End(xlDown)).Select Selection.Copy Sheets("Sheet3").Select Range("A2").Select Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _ :=False, Transpose:=False Sheets("Sheet3").Select Sheets("Sheet3").Copy ActiveWorkbook.SaveAs Filename:= _ "\\C:\Documents and Settings\ユーザー1\My Documents\n" & Format(Now, "m-d") & "-1", FileFormat:= _ xlCSV, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False _ , CreateBackup:=False ActiveWorkbook.Close Application.DisplayAlerts = True Sheets("Sheet3").Range("2:50").ClearContents Application.ScreenUpdating = True Rows("2:2").Select Range(Selection, Selection.End(xlDown)).Select Application.CutCopyMode = False Selection.ClearContents Range("A2").Select Sheets("Sheet2").Select With Selection.Interior .Pattern = xlSolid .PatternColorIndex = xlAutomatic .ThemeColor = xlThemeColorDark1 .TintAndShade = -0.499984740745262 .PatternTintAndShade = 0 End With Selection.AutoFilter Range("A2").Select End Sub > Rows("8:8").Select > Range(Selection, Selection.End(xlDown)).Select > Selection.Copy csv保存後に可視セルのみ色付けしたいのですが、 空白セル(参照式入り)まで全て色づけられるため困ってます。

すると、全ての回答が全文表示されます。

関連するQ&A