Excel - Cari Nilai Maksimum setiap 10 baris & baris tanda

Isu

Saya memerlukan bantuan mencipta formula dalam kecemerlangan untuk mengenal pasti nilai-nilai tertinggi dan paling rendah setiap 10 baris THEN Kenalpasti kedua-dua baris tersebut dengan meletakkan beberapa teks atau nombor dalam lajur kosong dalam baris dengan nilai tertinggi dan terendah. Contohnya saya ingin mengembalikan perkataan tersebut di Ruang A3 untuk HANYA harga perdagangan Tertinggi dan Terendah untuk setiap 10 baris baris. Dengan cara ini saya boleh menyusun data dengan Simpan dan hapus 8 baris data yang lain. Dengan cara ini saya dapat menyimpan sebahagian besar integriti data saya dan sangat mengurangkan saiz fail.

Saya menggunakan Excel 2007 dan saya mempunyai 160, 000 baris data. Tujuan formula ini adalah untuk memotong data ini hingga 80%

Spreadsheet di bawah memberikan contoh mudah.

 Waktu Perdagangan Harga C adalah lajur kosong untuk formula keluar dimasukkan ___________A____________B_____________C Baris 1 19:30:25 121.81 Baris 2 19:30:26 121.80 Keep Row 3 19:30:29 121.83 Baris 4 19:30:31 121.86 Keep Row 5 19 : 39: 35 121.84 

Sebarang bantuan akan sangat dihargai.

Penyelesaian

Terdapat 3 makro "ujian", "test1" dan "membatalkan". Test1 tertanam dalam "ujian", jadi cukup jika anda hanya menjalankan "ujian" makro.

Kesemua tiga makro itu mestilah dalam modul. Macro "membatalkan" mengundurkan hasil makro.

Ambil ekstrak kecil data anda kira-kira 31 baris dan periksa makro. Jika keputusannya ok anda boleh menggunakan makro pada fail asal anda

KEPADA FILE ORIGINAL SELESA DENGAN INI SELALU BAHAWA ITU DAPAT DIKELUARKAN.

Makro 1:

 Dim r As Range, r1 As Range, x As Double, y As Double Dim j As Integer, k As Integer Dim r2 As Range, m As Integer Sub test () Worksheets ("sheet1"). Activate Range ("c1" = "isyarat" Set r2 = Julat (Julat ("B1"), Julat ("B1") Akhir (xlDown)) j = 1 m = MsgBox r.Address Set r1 = Range (r, r.Offset (9, 0)) MsgBox r1.Address Jika r.Offset (9, 0) = "" Kemudian Exit Do x = WorksheetFunction.Min (r1) y = WorksheetFunction (X, r2, 0) Sel (k, "c") = "simpan" k = WorksheetFunction.Match (y, r2, 0) Sel (k, "c ") =" tetap "m = m + 10 MsgBox m Loop test1 Akhir Sub 

Makro 2:

 Aktifkan Set r = Julat (Julat ("A1"), Julat ("A1"). Akhir (xlDown) .Offset (0, 3)) r.AutoFilter field: = 3, Kriteria1: = "simpan" r.Cells.SpecialCells (xlCellTypeVisible). Worksheet Lembar ("sheet2") Julat ("A2") ActiveSheet.AutoFilterMode = 

Makro 3:

 Sub undo () Lembar Kerja ("sheet1") Julat ("c1"). SeluruhColumn.Delete Worksheets ("sheet2"). 

Catatan

Terima kasih kepada venkat1926 untuk tip ini di forum.

Artikel Sebelumnya Artikel Seterusnya

Tip-Tip Utama