ahoj,
tohle by melo nakpirovat vse do do listu OrdresJ jednim vrzem...
Public Sub copy()
Dim lastROW As Integer
For i = 1 To 3
lastROW = Application.WorksheetFunction.CountA(Worksheets("ordresj").Range("a:a")) + 1
Worksheets("ordresj+" & i).Select
ActiveSheet.Range(Cells(2, 1), Cells(Application.WorksheetFunction.CountA(Worksheets("ordresj+" & i).Range("a:a")), 256)).copy
Worksheets("ordresj").Cells(lastROW, 1).PasteSpecial Paste:=xlPasteValues, _
Operation:=xlNone, SkipBlanks:=False, Transpose:=False
Next
End Sub
Jen tak na prvni pohled bych rekl, ze by mohlo byt na liste vic nez 5000 neprazdnych radek, coz ale asi vkladalo do bunky a2.
Slo by prilozit nejakou ukazku, abych se na to podival?
Zdravim,
tohle neni otazka zobrazeni, protoze v excelovskym formatu ma hodnota 7min a 30sec opravdu hodnotu 0,00521... - pokud z tohoto čísla potřebujeme dostat hodnotu 7,5 - je potřeba ho vynásobit počtem minut v jednom dni, tedy hodnotou 1440, při zobrazení obecného čísla, bude potom vrácena hodnota 7,5.
Je to jednoduche. Pokud jsou polozky pod sebou ve sloupci A, staci do bunky B1 vlozit tento vzorec:
=KDYŽ(A1<100;A1*1,1;A1*1,2) a roztáhnout ho ke všem řádkům.
Pokud je hodnota menší než 100, je násobena 1,1
pokud je větší nebo rovna 100, je násobena 1,2.
Tak zkus pro priste definovat problem presne, jinak ti nikdo nemuze pomoct.
vzorec: ="R/"&ČÁST(A1;1;NAJÍT("-ZF";A1)-1)
jestli je text, ktery je treba nahradit v bunce A1, zkus vzorec:
="R/" & ZLEVA(A1;3)
Zdravim, pokud je tam vzdy jen jedna mezera, jde to udelat vzorcem:
=DOSADIT(A1;" ";""), kde v A1 je zmíněný text s mezerou
Kontingenčka jde použít, ale pokud vim, tak kontingencni tabulku je nutne obnovit, takze to neni, jak jsi to nazval "on-line". Nicmene, ten muj vzorec je zas hodne narocnej na prepocitavani, coz by slo snadno upravit, suzenim oblasti, kterou jsem definoval jako A:A, napr. suzeni na A1:A1000
Tak tohle mi dalo hodne zabrat, ale nasledujici vzorec umi ze seznamu ve sloupci A na Listu1 vybrat pouze unikatni zaznamy.
Oznac napr. sloupec B na jiném listu a pri tomto oznaceni zadej do editačního řádku tento vzorec: =KDYŽ(JE.CHYBHODN(INDEX(NEPŘÍMÝ.ODKAZ("List1!a1:a"&COUNTIF(List1!A:A;"*"));SMALL(KDYŽ(POZVYHLEDAT(NEPŘÍMÝ.ODKAZ("List1!a1:a"&COUNTIF(List1!A:A;"*"));NEPŘÍMÝ.ODKAZ("List1!a1:a"&COUNTIF(List1!A:A;"*"));0)=ŘÁDEK(NEPŘÍMÝ.ODKAZ("1:"&ŘÁDKY(NEPŘÍMÝ.ODKAZ("List1!a1:a"&COUNTIF(List1!A:A;"*")))));POZVYHLEDAT(NEPŘÍMÝ.ODKAZ("List1!a1:a"&COUNTIF(List1!A:A;"*"));NEPŘÍMÝ.ODKAZ("List1!a1:a"&COUNTIF(List1!A:A;"*"));0);"");ŘÁDEK(NEPŘÍMÝ.ODKAZ("1:"&ŘÁDKY(NEPŘÍMÝ.ODKAZ("List1!a1:a"&COUNTIF(List1!A:A;"*"))))))))=PRAVDA;"";INDEX(NEPŘÍMÝ.ODKAZ("List1!a1:a"&COUNTIF(List1!A:A;"*"));SMALL(KDYŽ(POZVYHLEDAT(NEPŘÍMÝ.ODKAZ("List1!a1:a"&COUNTIF(List1!A:A;"*"));NEPŘÍMÝ.ODKAZ("List1!a1:a"&COUNTIF(List1!A:A;"*"));0)=ŘÁDEK(NEPŘÍMÝ.ODKAZ("1:"&ŘÁDKY(NEPŘÍMÝ.ODKAZ("List1!a1:a"&COUNTIF(List1!A:A;"*")))));POZVYHLEDAT(NEPŘÍMÝ.ODKAZ("List1!a1:a"&COUNTIF(List1!A:A;"*"));NEPŘÍMÝ.ODKAZ("List1!a1:a"&COUNTIF(List1!A:A;"*"));0);"");ŘÁDEK(NEPŘÍMÝ.ODKAZ("1:"&ŘÁDKY(NEPŘÍMÝ.ODKAZ("List1!a1:a"&COUNTIF(List1!A:A;"*"))))))))
vzorec ukonči stiskem CTRL+SHIFT+ENTER
Pokud o uceni se VBA, to se resilo tady: http://wall.cz/index.php?m=topic&id=1121, ale jestli jde jen o to najit konkretni metody, lze si pozadovanou akci nahrat pomoci zaznamu maker a upravit si vytvoreny kod...
Jednou z moznosti je pouzit Rozšíření filtr - Data/Filtr/Rozsireny filtr - bez duplicitnich zaznamu
Zdravím,
je otázka, jestli se má procedura spouštět na základě nějake akce automaticky nebo ji spustit uzivatel; tato procedura zkontroluje prvni sloupec aktivniho radku a pokud se tato bunka rovna "hodnota", smaze cely radek.
Sub DeleteRow()
If Cells(ActiveCell.Row, 1) = "hodnota" Then
Rows(ActiveCell.Row).Select
Selection.Delete Shift:=xlUp
End If
End Sub
tahle procedura vypise vsechny soubory s priponou .dxf do buněk na listu (pocinaji bunkou A1)
Sub HONORARE_soubory()
Dim f As String
Dim Cesta As String
Dim i As Integer
Cesta = "C:\Documents and Settings\Poki\Dokumenty\" 'Cesta musí končit znakem '\'
ChDir Cesta
f = Dir(Path & "*.dxf")
i = 1
While f <> ""
Cells(i, 1) = f
i = i + 1
f = Dir()
Wend
End Sub
Zdravice,
tohle jsem teda vůbec nepochopil (a asi ani jini, kdyz nikdo neodpovedel), ale pokud potrebujes soucet skalarnich soucinu sloupce A s dalsimi, tedy A*B + A*C + A*D + A*E, pak lze pouzit tento maticovy vzorec (je treba ukoncit CTRL+SHIFT+ENTER)
=SUMA((A1:A5)*(B1:B5);(A1:A5)*(C1:C5);(A1:A5)*(D1:D5);(A1:A5)*(E1:E5))
Nevim, jestli jsem to dobře pochopil, protože tech linek a typů poruch je tam moře a nevim, co přesně je požadovaný výstup.
Pokud chceš sečíst např. poruchu 'OK Start' u linky 'F16', lze použít tento matickový vzorec (musí se ukončit CTRL+SHIFT+ENTER)
=SUMA((H34:H1838="FIN16")*(E34:E1838="OK Start")*(D34:D1838))
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.