Příloha nějak nedorazila, tak odhadem třeba takto ?
Funkce HLEDAT a SEARCHB vyhledají jeden textový řetězec v rámci druhého textového řetězce a vrátí číslo počáteční pozice prvního textového řetězce od prvního znaku druhého textového řetězce. tolik popis fce. Pokud nenajde vyhodí #HODNOTA a s tím pak dál nepracuje, protože podmínka je NEPRAVDA, ale s číslem pozice (ať je zde jakékoli - zde jako podmínka PRAVDA) pracuje dál.
Sub zamknout()
ActiveWorkbook.Protect Structure:=True, Windows:=True
End Sub
tedy zamknout sešit, kdy položka ODSTRANIT je nefunkční a proti nenechavcům zaheslovat.
odstranění, resp. přechod na jiný list zachytí
Private Sub Workbook_SheetDeactivate(ByVal Sh As Object)
ale to je asi všechno, list bude stejně odstraněn, takže to nic neřeší.
jinak nevím.
použití VYHLEDAT
=KDYŽ(I1<>"";VYHLEDAT(I1;Sheet2!$A$1:$A$4;Sheet2!$B$1:$B$4);"nenalezeno")
edit:
myslím, že jak pro fci VYHLEDAT tak SVYHLEDAT by musela být tabulka na listu 2 seřazena vzestupně podle sl. A, jinak bude vyhledávat nesmysly. Takže nejjednodušší je použít vzorec od eLCHa.
ještě jiné řešení
funkce která by to podchytila je ISNA (JE.NEDEF)
Pokud není s čím porovnat excel težko vymyslí jméno. Excel porovnává nově zapisovaný text a nabízí shodu ze stejného sloupce, to však funguje, pokud je ve sloupci již něco zapsáno. Lze taky použít nabídku menu "vybrat z rozevíracího seznamu" viz příloha.
Jo, nechal jsem to "volné" ve vzorci "", jako podmínka FALSE. Může to být i se zobrazením, třeba takto.
Vzorce jsou dole upravené, stejné, ale jinak poskládané, takže kratší.
?
@ji026441
Číslo sloupce sice lze zadat, ale stejně hledáš ve sloupci "A"
Uplné odstranění řádků:
Sub vyhodQ()
Rem --- pro sloupec A --- jinak upravit ---
Dim MaxLin As Long
Application.ScreenUpdating = False
MaxLin = Cells(Rows.Count, "A").End(xlUp).Row
For lin = MaxLin To 1 Step -1
For pismeno = 1 To Len(Cells(lin, "A"))
If Mid(Cells(lin, "A"), pismeno, 1) = "q" Or pismeno = "Q" Then
Rows(lin & ":" & lin).Select
Selection.Delete Shift:=xlUp
End If
Next
Next lin
Application.ScreenUpdating = True
End Sub
edit:
mezi End If a Next (4-5 řádek odspodu) by mohl být ještě řádek EXIT FOR
Lahwac to napsal dobře, pak stačí jen vymazat, ale, co je to "odstranit". Úplně odstranit řádky nebo třeba jen skrýt?
Nastavení Excelu:
Soubor > možnosti > vzorce > styl R1C1 = zrušit zatržení.
Chcem aby excell udaje excel s druhym stplpcom je to vobec mozne?
myslím si, že právě zde byla odhalena slabina Excelu, tuším, že tohle nezvládne !
pokud by se mělo jednat výhradně o velké A tak:
=KDYŽ(KÓD(B1)=65;1;"")
Oblíbený formulář Faktura byl vylepšen a rozšířen.
Více se dočtete zde.
Používáte podnikový systém Helios iNuvio? Potřebujete pomoci se správou nebo vyvinout SQL proceduru? Více informací naleznete na stránce Helios iNuvio.