|
▼kanabun さん:
回答、感謝いたします。
実行してみたのですが、最初の行(A1,B1,C1,D1の行)だけが
ダブって残ります。後はうまくいきます。
10時のデータ A1,B1,C1,D1 の次の行に
12時のデータが A2,B2,C2,D2 として来てしまう状況です。
>▼本山中 さん:
>
>>3.B列には4桁の数値が入力されています。
>>このとき、B列の数値を利用して、12時に入力したデータのうち
>>10時に入力した数値と同じものがあれば、12時のデータの行を削除し、
>>空行を生じさせないよう、上へ詰める。
>>尚且つ、B列の数値を利用して常に昇順にデータを並び変えておく。
>
>マクロ内容としては、
>1.B列にフィルタオプションをかけて重複カットし、
>2.その状態での表をE列以降にコピーしてから、
>3.元のA〜D列を削除
>4.新しい A〜D列にたいして B列をキーにSortをかける
>
> With Range("A1").CurrentRegion
> .Columns("B").AdvancedFilter xlFilterInPlace, Unique:=True
> .Copy Range("E1")
> .Worksheet.ShowAllData
> .EntireColumn.Delete
> End With
> With Range("A1").CurrentRegion
> .Sort Key1:=.Columns("B"), Header:=xlYes
> End With
>
>のような感じでよろしいかと思います。
>
>決めなければいけないのは、
>このマクロをどういうタイミングでマクロを実行するか、ですが。
>たとえば、B列をダブルクリックしたら、マクロを実行する、とか?
|
|