Příspěvky uživatele


< návrat zpět

Strana:  1 ... « předchozí  8 9 10 11 12 13 14 15 16   další » ... 41

Použijte vlastnosti dokumentu. (je to stejné i v excelu, powerpointu, ...)

Soubor/informace/vlastnosti/upřesnit vlastnosti

Vyberte vhodné k použití, případně vytvořte vlastní. Přes propojení do ovládacích prvků se dají aktualizovat i z dokumentu.

Potom není nutné žádné vyhledávaní, struktura souboru pro tento účel není důležitá, dá se snadno vyhledávat i z průzkumníka ... Makro si jednoduše "sahne" do vlastností a vypíše potřebné.

Stačí

=SUMA(SOUČIN.MATIC(--(A2:E5="M");TRANSPOZICE(A1:E1)))

Poznámku o relacích M:N v příspěvku jsem zaznamenal.

Tak ještě jednou možnosti:

a) Upravit strukturu dat (třeba v PQ) a relací M:N se zbavit.

b) Nebo použít virtuální relace pomocí měřítek. Tento přístup je univerzální, jen trochu pracnější. Umožní zohlednit více vazeb. Příklad je uveden výše.

c) A/nebo použít funkci CROSSFILTER k vytvoření relace M:N. V excelu (na rozdíl od jiných implementací) nelze takovou relaci do datového modelu zadat.
Funkce ale umožňuje takovou relaci ve vzorci vytvořit. Je to v běžných případech často jednodušší, než vytváření univerzálního filtru.

Vše se týká datového modelu a výstupu do KT.

Má to snad být něco takového:

=SUMA(List1:List5!A1)

???

Jinak, pokud funkce nevyžaduje odkaz na pole, lze rozsahy i z různých listů skládat do jednoho pole.

např.
=ZVOLIT({1\2}; List2!C1:C6;List3!C1:C6)

složí dva sloupce vedle sebe do jednoho pole.

Možná se dá také použít KT nebo vytvářet souhrn pomocí powerquery.

"skvělý příklad"...
Ty tabulky mají pro spojení je pole Id a ani jednu společnou hodnotu.

Tak tedy obecně.

1. Tabulky převést na tabulky
2. vytvořit kt z jedné tabulky, zatrhhnout "přidat do datového modelu.
3. na data z následujících tabulek je možné se potom odkazovat pomocí virtuálních relací.

Např. pokud budu předpokládat, že pole Id tabulky spojuje, pak např. na prodej se lze dotázat měřítkem:


prodej_rel:=var akt_id = distinct(Tabulka1[id])
return calculate(sum(Tabulka2[prodej]);CONTAINSROW(akt_id;Tabulka2[id] ))


Vhodnější je (např. pomocí power query) dát tabulkám aspoň náznak struktury databáze.

Nechce se mi to zkoumat. Makro je zbytečné.

Podmíněný formát:

Vzorec: =max(C2:C4)>1
formát: červené pozadí

Spíš bych přidal druhý sloupec "datum" a vložil bych filtr "časovou osu". (analýza KT, filtr, vložit časovou osu).
(první datum se v kt automaticky převádí na text, proto ta kopie)

Add manipulace s časem v ose - makro, převést čas na desetinné číslo a vložit do osy.

Pokud jen v excelu, v pomocném sloupci lze kumulativně sčítat tankování. Pokud se má sečíst spotřeba od posledního tankování, tak od kumulativního tankování lze odečíst kum tankování u předchozího ano (viz funkce xlookup, umí hledat od posledního řádku k prvnímu).

Podle dat také funguje

Dim r As Range
Set r = Range("J:J")

r.NumberFormat = "General"
Range("G:G").FormulaLocal = Range("G:G").Value


Nebo lépe:

Sub Makro1()

Dim r As Range
Dim r1 As Range
Dim v() As Variant
Dim i1 As Long
Dim i2 As Long

' vybrat jen texty
Set r = Range("J:J").SpecialCells(xlCellTypeConstants, 2)
For Each r1 In r.Areas
v = r1.Value

For i1 = LBound(v, 1) To UBound(v, 1)
For i2 = LBound(v, 2) To UBound(v, 2)
If IsNumeric(v(i1, i2)) Then v(i1, i2) = CDbl(v(i1, i2))
Next i2
Next i1
r.NumberFormat = "General"
r.Value = v
Next r1
End Sub

Jaké odkazy - do vlastního sešitu, do jiného souboru, do adresáře, někam (onedrive, sharepoint,...), internet, ...

Jsou odkazy v buňce viditelné, nebo jsou schované pod textem?

V čem je problém?
Neumíš načíst samotný hypertextový odkaz?
Neumíš načíst odkaz z tabulky?

Obecná rada/řešení:

Pokud umíš načíst data ze zadaného odkazu, tak vytvoř dotaz, který to provede a přeměň ho na funkci. Odkaz musí být parametrem této funkce.

Potom načti tabulku a na sloupec s odkazem použij Table.TransformColumn, kde transformující funkcí bude ta právě vytvořená.

Taky jde použít průměr:

=PRŮMĚR(FILTER(A4:A2884;--(A4:A2884>0,5)*(--(B4:B2884=E2) + (B4:B2884=F2))*(C4:C2884=G2)))

Pokud tedy máte novější verzi a nechcete pokaždé tabulku řadit, lze použít třeba:

=INDEX(SORT(FILTER(D2:G7;D2:D7=E11);4;-1);1;{3\2})

Matice jsou automatické. Předpokladem je datum-čas ve sloupci G (stačí ve sloupci G nahradit "-" za nic).

V čem to chcete dělat? (verze)

Jen text:

countif(oblast;"*")

2.jak označit v makru více řádků, když v nich kdekoliv mám označeno více buňek.


'zapamatuju si vybrané buňky
dim vybrano as range
Set vybrano = Selection

' vybarvim řádek, kde je nějaká vybraná buňka
vybrano.EntireRow.Interior.Color = vbRed


kopírovat celé tyto řádky/2,5,7,10/, nebo třeba do jiného listu

Dim i As Long
Dim area As Range
Dim list2 As Worksheet

'každý řádek zkopíruje do List2
set list2 = Worksheets("List2")
i = 1
For Each area In vybrano.EntireRow.Areas
With area
list2.Cells(i, 1).Resize(.Rows.CountLarge, .Columns.CountLarge).Value = .Value
i = i + .Rows.CountLarge
End With
Next area


Strana:  1 ... « předchozí  8 9 10 11 12 13 14 15 16   další » ... 41

Uživatelské menu

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

Formulář Faktura

Formulář Faktura IV

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

Helios iNuvio

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.

On-line nástroje