< návrat zpět

MS Excel


Téma: Svyhledat a Sumif rss

Zaslal/a 1.2.2021 7:30

Ahoj.
Potřeboval bych pomoc s již částečně hotovou procedurou.
Do listu „Data“ podle hodnoty ve sloupci „B“ dostat do listu „Data ke strojům“ součet hodnot za jednotlivé sloupce G až M a tyty součty dostat do listu „Data“ sloupců EL až ER. Sloupce A až D z listu „Data ke strojům“ nakopírovat do listu „Data“ do sloupců sloupce „EF až EI“. bez součtu.

Na listě „VZOR“ je jak by mělo vypadat třeba u nabídek 64811 a 64882

Děkuji za případnou pomoc.

Aktuálně využívám toto, ale neprovádí mi tou součet času celkem.

Dim RadkuN As Long
Dim RadkuD As Long
Dim i As Long, aFind

Sheets("Data ke strojům").Range("A1:M1").Copy
Sheets("Data").Range("EF1").PasteSpecial
Application.CutCopyMode = False

RadkuD = Worksheets("Data").Cells(Rows.Count, 1).End(xlUp).Row
If RadkuD = 1 Then MsgBox "Žádné data.", vbExclamation: Exit Sub

With Worksheets("Data ke strojům")
RadkuN = .Cells(Rows.Count, 1).End(xlUp).Row
If RadkuN = 1 Then MsgBox "Žádné data.", vbExclamation: Exit Sub
aFind = Evaluate("=IFNA(MATCH('Data'!A2:A" & RadkuD & ",'Data ke strojům'!A2:A" & RadkuN & ",0),0)")

If IsArray(aFind) Then
For i = 1 To RadkuD - 1
If aFind(i, 1) > 0 Then .Range("A1:M1").Offset(aFind(i, 1), 0).Copy Worksheets("Data").Cells(i + 1, "EF")
Next i
Else

If aFind > 0 Then .Range("A2:M2").Copy Worksheets("Data").Cells(1, "EF")
End If
End With

Příloha: rar49651_nabidky-vyhodnoceni-cas-celkem.rar (147kB, staženo 15x)
Zaslat odpověď >

#049652
avatar
Pro lepší představu v listě Data ve sloupci ER by měl být takový vzorec
=SUMIF('Data ke strojům'!C:C;Data!B2;'Data ke strojům'!M:M)

A tak samo i ve sloupcích El až EQ.
Jen nevím jak to napasovat do VBA

Děkuji.citovat
#049653
avatar
Neviem kde je chyba, ale mate tam rozne cisla ako Nabídka IdIndex řádku 64811, ale neskor mate Nabídka Id 6481 asi nemate dobre Index radku 1 dany v samostatnej bunke.

Pokial to date Sumifs cez Položka nabídky Id, ktore su ok a jedinecne, tak potom vo VZOR mozete dat na bunku EP napriklad:

=SUMIFS('Data ke strojům'!$K$2:$K$200;'Data ke strojům'!$C$2:$C$200;'Data ke strojům'!C3)
+ dalsie podmienky

Nieje potreba to robit cez VBAcitovat
#049654
avatar
Děkuji za reakci.

64811 je jak ve VZORU (sl. A řádek 2) tak i v DATA KE STROJI(sl. A řádky 2a3) a tak i v DATA (sl. A řádek 2).

64882 je jak ve VZORU (sl. A řádek 3) tak i v DATA KE STROJI(sl. A řádky 15,16 a 17) a tak i v DATA (sl. A řádek 11).

Dá se tedy podle toho dohledávat.

Jinak potřebuji to do procedur, protože je to jen jeden úkon z mnoha.

Slouží to ke sčítání všech výrobních časů, režií, odpadu atd.. za jednotlivé stroje

Děkuji moc.
Příloha: rar49654_nabidky-vyhodnoceni-cas-celkem.rar (148kB, staženo 11x)
citovat
#049655
avatar

Raders486 napsal/a:

Děkuji za reakci.

64811 je jak ve VZORU (sl. A řádek 2) tak i v DATA KE STROJI(sl. A řádky 2a3) a tak i v DATA (sl. A řádek 2).

64882 je jak ve VZORU (sl. A řádek 3) tak i v DATA KE STROJI(sl. A řádky 15,16 a 17) a tak i v DATA (sl. A řádek 11).

Dá se tedy podle toho dohledávat.

Jinak potřebuji to do procedur, protože je to jen jeden úkon z mnoha.

Slouží to ke sčítání všech výrobních časů, režií, odpadu atd.. za jednotlivé stroje

Děkuji moc.Příloha: 49654_nabidky-vyhodnoceni-cas-celkem.rar (148kB, staženo 0x)


Ak potebujete len nejaku statistiku kolko sa kde vyrobilo, za aku cenu, ludia, odpady, tak si nastudujte pivot tabulky a relacie medzi tabulkami, aby ste
mohli dat do kopy 3 rozne tabulky.
Tabulka strojov
Tabulka vykonov
Tabulka vykonanych prac

Pokial budu v tabulke strojov, len data na jeden ks, ci hodinu chodu stroja, v tabulke vykony zase data len na ludi, material, cas a v tabulke vykonanych prac len data, co sa naozaj pouzilo, aky stroj a ake vykony, tak sa to da dat cele do kopy.

Dat mate dost, tazko je vam pomoct pri tolkych roznych datach...

Data ke strojum su cisla za jeden kus, ci uz ten ktory projekt?

Stiahnite si a pozrite sa ako sa daju pivot tabulky spojit a potom s nimi pracovat. Urcite jednoducho a vy si urcite sami ake data potrebujete. Mam pocit, ze som to mozno inak spojil ako by ste si predsatvovali, ale ako nacrtnutie by stacilo.

https://1drv.ms/x/s!Al2ZSCuN7BVEglKQiw24rhoFOT1q?e=MIoo7Qcitovat
#049671
avatar
Děkuji za snahu.
Netušil jsem že, že když požádám o pomoc s proceduru na Svyhledat a sumif, že budeme debatovat na tím zda to potřebuji v proceduře či.
Jak jsem psal, mám důvody, proč to potřebuji ve VBA.
Pokud bych to chtěl v kontingenční tabulce, tak s tím tady neobtěžuji.

Asi to budu muset vyřešit jinde.
To je snad poprvé, co jsem zde nepochodil

Každopádně děkuji alespoň za nějakou reakci.citovat
#049672
avatar
Tak jsem vyřešil tímto způsobem.

Sub celkovy_cas()

Dim radek As Integer
Dim posledni As Long
posledni = Workbooks("Nabídky vyhodnocení").Sheets("Data").Range("A1").CurrentRegion.Rows.Count

Range("ER2").FormulaR1C1 = _
"=SUMIF('Data ke strojům'!C[-145],Data!RC[-146],'Data ke strojům'!C[-135])"
Range("ER2").Copy
Workbooks("Nabídky vyhodnocení").Sheets("Data").Range("ER2", Sheets("Data").Range("ER" & posledni)).PasteSpecial
Workbooks("Nabídky vyhodnocení").Sheets("Data").Range("ER2", Sheets("Data").Range("ER" & posledni)).Copy
Range("ER2").PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False

End Sub
citovat

Uživatelské menu

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

Menu

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