Výsledky 1 až 8 z 8

Téma: [EXCEL] - makro filtrování položek

  1. #1

    Standardní [EXCEL] - makro filtrování položek

    Pls, v makrech se moc nevyznám a potřebuju zhruba toto.
    Na jednom listu bude výstup z účta několik set položek. Potřebuju smazat všedhny řádky kde hodnota ve sloupci G /text / nebude definovaná v číselníku. Čiselník je na druhým listu cca 15 řádků / text /
    Dík
    INTEL P4 2.8 GHz, MSI 456PE Neo2, 512 MB DDR,Seagate BarracudaIV 80GB S-ATA, ATI Sapphire Radeon 9000 Pro ,AVer TV Studio, Plextor 48/24/48TA, Windows XP Pro, OLYMPUS C720UZ

  2. #2
    Senior Member
    Založen
    22.07.2003
    Bydliště
    Ostrava - Homeless putující světem
    Příspěvky
    731
    Vliv
    276

    Standardní

    není třeba maker, stačí jen mozek
    1) do volného sloupce u účtu si dej číslování (řádků 1 ...n)
    2) použij fci svyhledat v angů vlookup , pro každý řádek účtu hledej zda daná hodnota existuje v číselníku -- poslední parametr funkce je 0 !
    3) seřaď dle sloupce s vyhledáváním -- chybové hodnoty
    4) smaž řádky s chyb. hodnotami
    5 seřaď dle číslování viz. bod 1)

    Pozn. bod 1 a 5 jsou nutné pokud budeš chtít zachovat stejné pořadí i po odstranění řádků
    Autor tohoto příspěvku je zpráskaná LAMA. Absolvoval 6 tříd ZŠ. Proto berte obsah příspěvku s rezervou.

  3. #3

    Standardní

    .. když píšu že bych potřeboval makro tak asi vím proč
    S takovýma tabulkama pracuju x-krát denně a je tam několik set položek tak je pro mně lepší použít makro než to otrocky dělat ručně ... Jo a kdyby sis nevšim v threadu o kus vedle je přesně napsaný co co jsi radil ty ...
    INTEL P4 2.8 GHz, MSI 456PE Neo2, 512 MB DDR,Seagate BarracudaIV 80GB S-ATA, ATI Sapphire Radeon 9000 Pro ,AVer TV Studio, Plextor 48/24/48TA, Windows XP Pro, OLYMPUS C720UZ

  4. #4
    Senior Member
    Založen
    22.07.2003
    Bydliště
    Ostrava - Homeless putující světem
    Příspěvky
    731
    Vliv
    276

    Standardní

    Citace Původně odeslal Radim
    .. když píšu že bych potřeboval makro tak asi vím proč
    S takovýma tabulkama pracuju x-krát denně a je tam několik set položek tak je pro mně lepší použít makro než to otrocky dělat ručně ... Jo a kdyby sis nevšim v threadu o kus vedle je přesně napsaný co co jsi radil ty ...
    1) Když chceš makro - program - , tak bys mohl trošku použít mozek a dát sem přesnou strukturu těch tabulek. - Takhle ti nikdo nepomůže. JE to stejné jakobys napsal - mám soubor udělejte mi program, který mi ho zvětší.
    2) To co jsem ti napsal je otázka max 1minuty.
    Autor tohoto příspěvku je zpráskaná LAMA. Absolvoval 6 tříd ZŠ. Proto berte obsah příspěvku s rezervou.

  5. #5

    Standardní

    Uffff.... OK.. napíšu to co mi stačí, zbytek udělám sám ....
    Sloupec A / x-set řádku - text / - Sloupec B / 15 řádků - text /
    1. Zjistit počet řádků ve sloupci A / neprázdných /
    2. Projít od začátku do konce a
    - je-li hodnota z A rovna alespoň jednomu poli z B / B1:B15 / jedu dál, pokud ne smaž rádek /
    Jde mi o ten princip jak na to. Ti že to bude na cca 5-ti listech a v jiných sloupcích to už si upravím...

    EDIT : Můžu si to udělat ve FoxPro nebo v Accessu ale proč, když to půjde udělat nejjednodušeji makrem !!!
    INTEL P4 2.8 GHz, MSI 456PE Neo2, 512 MB DDR,Seagate BarracudaIV 80GB S-ATA, ATI Sapphire Radeon 9000 Pro ,AVer TV Studio, Plextor 48/24/48TA, Windows XP Pro, OLYMPUS C720UZ

  6. #6
    Senior Member
    Založen
    22.07.2003
    Bydliště
    Ostrava - Homeless putující světem
    Příspěvky
    731
    Vliv
    276

    Standardní

    Kód:
    Sub Uprava()
    
    Dim Ciselnik As Range, Ucty As Range
    
    Set Ciselnik = Sheets(1).Range("b1", "b15") 'Sheets(Cislo listu)
    Set Ucty = Sheets(1).Range("a1")
    
    Do Until Ucty = ""
      
      If Ciselnik.Find(Ucty) Is Nothing Then
      'Podivej se do napovedy jak chces nastavit podminky pro hledani
      'hlavne LookIn, LookAt a MatchCase
      'LookIn - vyhledani hodnot, vzorcu, komentaru
      'LookAt - zda musi sedet cely text, nebo pouze vysek &#40; bud "ASD1"="ASD10" nebo "ASD1"<>"ASD10"
      'MatchCase - mala velka
      'asi budes chtit&#58; Ciselnik.Find&#40;Ucty lookin&#58;=xlvalues,lookat&#58;=xlwhole,matchcase&#58;=true&#41;
        Set Ucty = Ucty.Offset&#40;1, 0&#41;
        Ucty.Offset&#40;-1, 0&#41;.Delete Shift&#58;=xlUp
       Else
        Set Ucty = Ucty.Offset&#40;1, 0&#41;
      End If
      
    Loop
    
    End Sub
    Pokud neuvedes nejakou vlastnost procedury Find, pak se pouzije posledni nastaveni, ktere bylo v dialogu Ctrl+F
    Autor tohoto příspěvku je zpráskaná LAMA. Absolvoval 6 tříd ZŠ. Proto berte obsah příspěvku s rezervou.

  7. #7
    Administrátor mince Avatar uživatele Jezevec
    Založen
    08.10.2002
    Bydliště
    Teplice
    Příspěvky
    6 738
    Vliv
    300

    Standardní

    Moc ti neporadim, jen mi prijde tupy pouzivat tabulky na fukce ktery jsou vylozene databazovy. To na co tady vymejslis makro bys v DB udelal jedinym dotazem.
    IMPROBE AMOR, QUID NON MORTALIA PECTORA COGIS - krutá jsi, lásko, kam až ty doženeš smrtelná srdce -- Vergilius
    Mnoho je prostředků, které léčí lásku, ale žádný není spolehlivý.
    S tím, čeho se na nás dopustili druzí se už nějak vyrovnáme. Horší je to s tím, čeho jsme se na sobě dopustili sami.
    -- Francois La Rochefoucauld
    Nabídnout přátelství tomu, kdo chce lásku, je jako dát chleba tomu, kdo umírá žízní.

  8. #8

    Standardní

    Citace Původně odeslal Jezevec
    Moc ti neporadim, jen mi prijde tupy pouzivat tabulky na fukce ktery jsou vylozene databazovy. To na co tady vymejslis makro bys v DB udelal jedinym dotazem.
    S tím nemůžu nic jinýho než souhlasit nicméně o tom nerozhoduju já
    2 : KON - zkusím, uvidím, dík
    INTEL P4 2.8 GHz, MSI 456PE Neo2, 512 MB DDR,Seagate BarracudaIV 80GB S-ATA, ATI Sapphire Radeon 9000 Pro ,AVer TV Studio, Plextor 48/24/48TA, Windows XP Pro, OLYMPUS C720UZ

Informace o tématu

Users Browsing this Thread

Toto téma si právě prohlíží 1 uživatelů. (0 registrovaných a 1 anonymních)

Pravidla přispívání

  • Nemůžete zakládat nová témata
  • Nemůžete zasílat odpovědi
  • Nemůžete přikládat přílohy
  • Nemůžete upravovat své příspěvky
  •