Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailem ms excel rozšírené filtrovanie

Dobrý den,

chcel by som poradit ako by som mohol v exceli spravit takuto vec:

v harku1 mam zoradene hodnoty v 1. stlpci je datum v 2. je teplota1 v 3. teplota2 atd. V riadkoch su uvedené jednotlivé hodnoty zoradené podla dátumu

v harku 2 by som chcel mat vyber Dátum od do kde by som si mohol vybrať dátum z rozsahu v hárku 1 a podľa tohto výberu by sa mi vytvoril v tomto hárku zoznam týchto hodnôt.

Dakujem pekne

Předmět Autor Datum
Rozsireny filtr, ktery je implementovan v Excelu (Data>Filtr>Rozsireny filtr) pozaduje umistit krite…
navstevnik 10.12.2008 12:32
navstevnik
hmm vyzera to super, len by si mi este vedel povedať ako to pouzijem? :) dakujem
eth4rendil 10.12.2008 20:25
eth4rendil
Tak to tedy zacni napriklad zde: excelentne.html , urcite najdes jak na to.
navstevnik 11.12.2008 00:38
navstevnik
ok dakujem pekne poslední
eth4rendil 11.12.2008 08:57
eth4rendil

Rozsireny filtr, ktery je implementovan v Excelu (Data>Filtr>Rozsireny filtr) pozaduje umistit kriteria i oblast pro vysledek na tentyz list.
Pokud trvas na umisteni kriterii a vysledku na jinem listu, pak nezbude nez napsat vlastni proceduru opirajici se o For Each...Next statement.
Neco takoveho:

Option Explicit

Sub najdi()
  Dim Krit1 As Variant, Krit2 As Variant, PoslRadek As Long
  Dim Databaze As Range, Extrakt As Range, c As Range, i As Long
  'definovat oblast databaze a kriterii
  Set Krit1 = Worksheets("list2").Range("f1")
  Set Krit2 = Krit1.Offset(0, 1)
  PoslRadek = Worksheets("List1").Cells(Rows.Count, "A").End(xlUp).Row
  Set Databaze = Worksheets("list1").Range("a1")
  Set Databaze = Databaze.Resize(PoslRadek, 1)
  'definovat oblast extrakt a clear
  PoslRadek = Worksheets("List2").Cells(Rows.Count, "A").End(xlUp).Row
  Set Extrakt = Worksheets("list2").Range("a1")
  Set Extrakt = Extrakt.Resize(PoslRadek, 1)
  Extrakt.ClearContents
  ' vykonna smycka
  i = 0
  For Each c In Databaze.Cells
    If c.Value >= Krit1 And c.Value <= Krit2 Then  ' podminky zadat dle potreby
      Extrakt.Offset(i, 0).Value = c.Value
      Extrakt.Offset(i, 1).Value = c.Offset(0, 1).Value
      ' pripadne dalsi bunky
      i = i + 1
    End If
  Next c
End Sub

Zpět do poradny Odpovědět na původní otázku Nahoru