Příspěvky uživatele


< návrat zpět

Strana:  « předchozí  1 2 3 4 5 6 7 8 9   další » ... 17

Luštil jsem už pár takových megavzorců, taky jsem používal odsazení do logických skupin - ručně.
Pro pochopení jednodušších vzorců mi pomáhá kurzor dát do řádku vzorců (barevné odlišení použitých buněk - částí vzorce) a na funkci si zobrazit graf.okno s argumenty (silně se odliší příslušná část vzorce). Okno "Argumenty funkce" proto, že si zpaměti nepamatuju ani u KDYŽ co je první - ANO nebo NE - to vždy dělám v tom okně a tam to mám napsané, natož u INDEX, SVYHLEDAT apod.!
Závorky jsou dobré, pomůžou, ALE:
1) silně mi chybí u výpisu v řádcích název funkce - když se vztahuje k funkci. Při zkoumání vzorce klikám na řádky vespod, vyčervení se mi text, ale když chci trefit řádek určitého úseku vzorce, nepovede se mi to napoprvé. Ulehčilo by to mít na začátku řádku uvedené třeba KDYŽ, INDEX, SMALL, atd. - tam kde to je možné
2) to co jsem zmiňoval výše, mít někde po ruce argumenty a jejich pořadí k funkci, když je zobrazený tento úsek vzorce.
možná něco z toho usnadní zvýraznění středníků, ale já to z toho nepochopil, nevím ...
A jen pro úplnost, testoval jsem to na megavzorci od Pokiho, který mám v restech, už tolik let, je tedy maticový, a zase jsem to nerozklíčoval. Odkaz:http://wall.cz/index.php?m=topic&id=9918 - z přílohy 10080_stomatologie.zip

Nevidím tolik do problému, ale makro asi hledá 1.výskyt něčeho, co je potřeba opravit. Tady bych makro ukončil, provedl tu opravu a pustil makro celé znovu. Zase najde další 1.místo.. atd. problém vidím jen v rychlosti/velikosti souboru. Ale neřešil bych pozastavení.

Zkus to takto:
Set oblast = Union(Range("B4:C4"), Range("F4:G4"))
oblast.Copy

nebo s definovaným řádkem složitěji
a = 4
Set oblast = Union(Range(Cells(a, 2), Cells(a, 3)), Range(Cells(a, 6), Cells(a, 7)))
oblast.Copy

Snad jsem to pochopil správně, v příloze řešení přes Nepřímý odkaz. Z důvodu velikosti souboru jsem celé řešení z 6000 sloupci musel osekat jen na 1200, ale stačí si pak rozšířit znovu tabulky. Zkuste.

Já tohle používám jako zodpovědný uživatel a hlavně sám pro sebe v následující podobě - je to podobné jako od Jeza.m - ale s potvrzením souboru, o který se jedná:
Sub overit_soubor()
Cislo_Wbook = -1
For i = 1 To Workbooks.Count
If Workbooks(i).Name <> ThisWorkbook.Name Then
Dotaz = MsgBox("Doplnit data z otevřeného souboru" _
& vbNewLine & Workbooks(i).Name & " ?", vbYesNo, _
"Výběr souboru")
Select Case Dotaz
Case vbNo
GoTo NE_Dalsi_soubor
Case vbYes
Cislo_Wbook = i
Exit For
End Select
End If
NE_Dalsi_soubor:
Next i
' --------
If Cislo_Wbook < 0 Then
MsgBox "Soubor není určen, musí být otevřený!"
Exit Sub
End If
' zde po vyberu souboru dalsi cinnost, zde jen msgbox
Cesta_B = Workbooks(Cislo_Wbook).Path & "\" & Workbooks(Cislo_Wbook).Name
Jmeno_B = Workbooks(Cislo_Wbook).Name
MsgBox "pracuju se souborem " & Cesta_B
End Sub

Zajímavé: provedu postup podle eLCHa 1-3 a po CTRL+A vidím oblast 69:100, ale vidím kosočtverec nahoře u ř.69 a funguje na celou oblast. A dole mě otravuje "rychlá analýza" (dá se to někde zabít?). Excel 2013 32b součást MSOffice 365 ProPlus

Range("N24:O24").MergeCells = False

=KDYŽ(JE.PRÁZDNÉ(E5);"";E5-C5) ?

Tak jen souhrn řešení eLCha v souboru, co jsem si dělal pro sebe, často se tu učím....

Jako na zavolanou. Trochu jsem se v tom hrabal, spíš sám pro sebe, jestli bych to uměl dotáhnout do funkčního stavu.
Původní moje myšlenka byla: proč přidávat složitě položky do formuláře, nešlo by to jinak?
V příloze jsou 2 verze:
V první je to pomocí jednoho formuláře, s výběrem položky, ale tím zapisuje změnu jen jedné položky skladu. Stisknuté tlačítko způsobí přidání/odebrání.
Ve druhé je k zápisu změn použitý přímo list - to mi přijde lepší, jde změnit cokoliv najednou, kladná hodnota přidá, záporná ubere.
Mimoto jsem jen trochu upravil tabulky v listech, aby se mi s tím líp pracovalo.
Berte to jako ukázku, není to dotažené k dokonalosti, ale vyzkoušejte.

Vysvětlení je jasné. Asi by stačilo změnit jeden řádek např. takto, pro název v B1:
strFile_Path = "C:\Users\pkoci\Desktop\" & Range("B1") & ".txt"

Jenom nápad, vím že Lotusy tyto exportované/otevřené soubory mají stejně uložené ve svém Tempu, někde na disku. Tak tím makrem zkusit najít ten správný soubor (což bude asi složité )a ten si otevřít znovu pro čerpání dat.

V příloze pár ukázek, je to jen základ, jak s tím pracovat.

Nedávno jsem řešil něco podobného. Definovat nebo upravit název mi jde jenom formou R1C1. Nevím proč. Text se proto musí sestavit do této podoby. Viz příloha.

něco takového:
Private Sub ComboBox1_Change()
Worksheets(1).Range("H1") = ComboBox1.Text
End Sub

nebo hodnotu plnit do proměnné a dál s tím pracovat.


Strana:  « předchozí  1 2 3 4 5 6 7 8 9   další » ... 17

Uživatelské menu

Nejste přihlášen(a)
avatar\n

Menu

On-line nástroje

Formulář Faktura

Formulář Faktura IV

Oblíbený formulář Faktura byl vylepšen a rozšířen.
Více se dočtete zde.

Aktivní diskuse