- Telekom otthoni szolgáltatások (TV, internet, telefon)
- WLAN, WiFi, vezeték nélküli hálózat
- Milyen NAS-t vegyek?
- Microsoft Excel topic
- Crypto Trade
- Súlyos adatvédelmi botrányba kerülhet a ChatGPT az EU-ban
- MinDig TV
- Rendszergazda topic
- Mindenki AI-t akar, már 2025-re is eladták a HBM chipeket
- Proxmox VE
-
IT café
A Microsoft Excel topic célja segítséget kérni és nyújtani Excellel kapcsolatos problémákra.
Kérdés felvetése előtt olvasd el, ha még nem tetted.
Új hozzászólás Aktív témák
-
cousin333
addikt
válasz detroitrw #14021 üzenetére
Ki szerelmes ennyire a szorzatösszeg függvénybe, hogy még egy egyszerű kivonáshoz is ezt használja?
Gondolom a zöldben megadott számú és hosszúságú léceket(?) kellene kihozni a megadott hosszakból úgy, hogy minél optimálisabb legyen az elosztás.
"We spared no expense"
-
#90999040
törölt tag
válasz detroitrw #14023 üzenetére
Megoldani meg lehet, csak kérdés, hogy mennyi idő alatt.
Sima függvényekkel szerintem teljesen kizárt, vba-val lehetséges. De azért gondolj bele:
Úgy látom, hogy 72 darab léc van jelenleg. Ennek a 72 elemnek kell(ene) az ismétlés nélküli permutációja, ami ugye 72! (faktoriális) ez ~~8,50478588567862E+101 eset, azaz kb. 8 a 101-ediken. Namost ezt ha most elindítod, akkor talán( ) 1 hét múlva végez.
Esetleg azt meg lehetne próbálni, hogy bizonyos hulladékszálakot megadni, és ha ez a százalék elég nagy, akkor van esély, hogy előbb talál egy ezen belülit.
Vagy random generálással is lehetne, szerencsés esetben előbb-utóbb beleakad egy alkalmas lehetőségbe....
-
cousin333
addikt
válasz detroitrw #14032 üzenetére
A sokféle lehetséges variáció miatt nem elhanyagolható a kézi módszer.
Én készítettem egy gépi változatot, ami a Solver funkcióra alapoz, és brute-force módszert használ: [link].
Persze igyekeztem minimalizálni a lehetőségeket számos korlátozás bevezetésével. Mindenesetre nálam gond nélkül futott egy órát, és még nem adott végleges eredményt. Igazából nem tudom, meddig futna...
Az egyes cellákat kicsit nehéz kibogarászni, mert a lehető legtöbb konkrét számot és a legkevesebb képletet szerettem volna felhasználni, így remélve azt, hogy gyorsul a számolgatás.
A lényeg, hogy az egyes sorokban látod a különböző elosztási típusokat (max. 5-öt), ahogy te is csináltad a kézi módszernél. A rendszer azt számítja, hogy melyik hosszból mennyit használjon, illetve az adott osztást hány lécen alkalmazza.
A Solver a maradék hosszok négyzetösszegét igyekszik minimalizálni, ami nem feltétlenül a legoptimálisabb cél, de talán nem okoz olyan nagy hibát.
[ Szerkesztve ]
"We spared no expense"
-
#90999040
törölt tag
válasz detroitrw #14032 üzenetére
Egy új munkalapra másold át az A1 : B7 tartományt(hogy az új munkalapon is az A1 : B7-ben legyen. Az A10-be írd be a 6000-et(mert milliméterben számol).
ALT+F11, majd INSERT menü -> Module.
Ebbe a modulba másold be ezt:Sub frissit()
Set cel = Range("D1")
maxsordarab = 20000
sor = 1 + cel.Row
oszlop = cel.Column
eredetisor = sor
Range("A1").CurrentRegion.Sort Key1:=Range("A2"), Order1:=xlDescending, Header:=xlGuess, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, DataOption1:=xlSortNormal
hosszok = Application.Transpose(Range("A2:A7"))
szalhossza = Range("A10").Value
darabok = Application.Transpose(Range("B2:B7"))
vegsodarabok = Application.Transpose(Range("B2:B7"))
For i = LBound(vegsodarabok) To UBound(vegsodarabok)
vegsodarabok(i) = Application.Min(Application.RoundDown(szalhossza / hosszok(i), 0), darabok(i))
Next
ReDim kimenet(1 To maxsordarab, 1 To 9)
ossz = 0
osszeg = 0
teljes = 0
n = UBound(darabok) - 1
ReDim tomb0(0 To n)
q = -1
Do
While q < n
q = q + 1
tomb0(q) = 0
Wend
ossz = ossz + 1
tele = True
m = 0
For i = 0 To n
If tomb0(i) < darabok(i + 1) Then
If osszeg + hosszok(i + 1) <= szalhossza Then
tele = False
Exit For
End If
End If
Next
If tele Then teljes = teljes + 1
Dim maxdarab As Integer
maxdarab = 200
If tele Then
For i = 0 To UBound(tomb0)
m = m + hosszok(i + 1) * tomb0(i)
kimenet(1 + sor - eredetisor, 1 + i) = tomb0(i)
If tomb0(i) <> 0 Then
If Application.RoundDown(darabok(i + 1) / tomb0(i), 0) < maxdarab Then maxdarab = Application.RoundDown(darabok(i + 1) / tomb0(i), 0)
End If
Next
kimenet(1 + sor - eredetisor, 1 + i) = (szalhossza - m) / szalhossza
kimenet(1 + sor - eredetisor, 1 + i + 1) = "*"
kimenet(1 + sor - eredetisor, 1 + i + 2) = maxdarab
sor = sor + 1
Else
For i = 0 To UBound(tomb0)
m = m + hosszok(i + 1) * tomb0(i)
kimenet(1 + sor - eredetisor, 1 + i) = tomb0(i)
If tomb0(i) <> 0 Then
If Application.RoundDown(darabok(i + 1) / tomb0(i), 0) < maxdarab Then maxdarab = Application.RoundDown(darabok(i + 1) / tomb0(i), 0)
End If
Next
kimenet(1 + sor - eredetisor, 1 + i) = (szalhossza - m) / szalhossza
kimenet(1 + sor - eredetisor, 1 + i + 2) = maxdarab
sor = sor + 1
End If
Do While q > -1
If tomb0(q) < vegsodarabok(q + 1) Then
tomb0(q) = tomb0(q) + 1
osszeg = osszeg + hosszok(q + 1)
If osszeg > szalhossza Then
osszeg = osszeg - hosszok(q + 1)
tomb0(q) = tomb0(q) - 1
osszeg = osszeg - hosszok(q + 1) * tomb0(q)
q = q - 1
Else
Exit Do
End If
Else
osszeg = osszeg - hosszok(q + 1) * tomb0(q)
q = q - 1
End If
Loop
Loop While q > -1
sor = sor - 1
For i = 1 To 9
kimenet(1, i) = kimenet(1 + sor - eredetisor, i)
kimenet(1 + sor - eredetisor, i) = ""
Next
ActiveWindow.FreezePanes = False
Range(Cells(eredetisor - 1, oszlop), Cells(maxsordarab, oszlop + 8)).ClearContents
Range(Cells(eredetisor, oszlop), Cells(eredetisor + maxsordarab - 1, oszlop + 8)).Value = kimenet
Range(Cells(eredetisor - 1, oszlop), Cells(eredetisor - 1, oszlop + 5)).Value = Application.Transpose(Range("a2:a7").Value)
Cells(eredetisor - 1, oszlop + 6).Value = "Hulladék"
Cells(eredetisor - 1, oszlop + 7).Value = "Teljes"
Cells(eredetisor - 1, oszlop + 8).Value = "Max darab"
Cells(eredetisor, oszlop).CurrentRegion.Sort Key1:=Cells(eredetisor, oszlop + 6), Order1:=xlAscending, Header:=xlYes, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, DataOption1:=xlSortNormal
Cells(eredetisor, oszlop + 10).FormulaR1C1 = "=1+RC[-2]"
Cells(eredetisor + 1, oszlop + 10).FormulaR1C1 = "=(1+RC[-2])*R[-1]C"
Cells(eredetisor + 1, oszlop + 10).Copy Destination:=Range(Cells(eredetisor + 2, oszlop + 10), Cells(sor, oszlop + 10))
Cells(eredetisor, 1).Select
ActiveWindow.FreezePanes = True
End SubA makró elindítása után(itt arra figyelni kell, hogy az új munkalap legyen az aktív) a D:H oszlopokban megjelennek a darabszámok(a fejléc a hosszt tartalmazza). A J oszlopban a hulladék, a K oszlopban levő csillag azt jelenti, hogy az adott 6m-es szálra már a legkisebb(jelen esetben 410 mm-es) darab sem fér rá.
Az L oszlopban az adott szál maximális darabszáma szerepel.A legfontosabb: N oszlopban jelzi, hogy hány esetet kellene megvizsgálni - no ez az, ami miatt napok/hetek/évek kérdése, hogy mikor végezne az összes eset megvizsgálásával.
[ Szerkesztve ]
-
#90999040
törölt tag
válasz detroitrw #14038 üzenetére
Szerintem nem annyira értelmezhetetlen.
Egy sor -> egy szálat jelent. Pl. a fejléc a konkrét esetben:
2427 2359 946 900 430 410 Hulladék Teljes Max darab
Az egyik sor pedig:
0 0 0 2 5 5 0 * 1
Ez ezt jelenti egy szál esetén:
0*2427 + 0*2359 + 0*946 + 2*900 + 5*430 + 5*410 = 6000Értelemszerűen a hulladék 0%. Teljes oszlopban a * azt jelenti, hogy erre a szálra már a legrövidebb(410 mm-es) darab sem férne rá.
A max darab ebből a szálból azért 1, mert ha pl. 2 lenne, akkor már a 430 mm-esből 10 darab jönne ki, holott összesen csak 6 darab kell belőle.Az adott linken levő programot fogalmam nincs, hogy lehetne működésre bírni(már csak azért sem, mert amit meg tudok csinálni, abból a legritkább esetben használok kész programot). De más talán majd megnézi...
Viszont még az elején említettem a random generálást. Ezt kipróbáltam. Ha 20 szálra keresek, akkor nagyon rövid idő alatt kidob egy lehetséges megoldást. Ha erre lecseréled az előző makrót, akkor láthatod az eredményt.
Sub frissit()
Set cel = Range("D1")
Range("D1:V" & Rows.Count).ClearContents
korrekcio = 1
maxprobalkozas = 10000000
talalatszam = 0
sor = cel.Row
oszlop = cel.Column
Range("A1").CurrentRegion.Sort Key1:=Range("A1"), Order1:=xlDescending, Header:=xlYes, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, DataOption1:=xlSortNormal
hosszok = Application.Transpose(Range("A2:A7"))
szalhossza = Range("A10").Value
darabok = Application.Transpose(Range("B2:B7"))
osszdarab = 0
osszhossz = 0
For i = 1 To UBound(darabok)
osszdarab = osszdarab + darabok(i)
osszhossz = osszhossz + hosszok(i) * darabok(i)
Next
mindarab = Application.RoundUp(osszhossz / szalhossza, 0)
ReDim tomb(0 To osszdarab - 1)
aktindex = 0
For i = 1 To UBound(darabok)
For j = 0 To darabok(i) - 1
tomb(aktindex) = hosszok(i)
aktindex = aktindex + 1
Next
Next
'kezdődik a tippözön :)
Randomize
For i = 1 To maxprobalkozas
For j = 0 To UBound(tomb)
R = Int((osszdarab) * Rnd())
R1 = Int((osszdarab) * Rnd())
If R <> R1 Then
temp = tomb(R)
tomb(R) = tomb(R1)
tomb(R1) = temp
End If
Next
szalakszama = 0
akthossz = 0
temphossz = 0
For j = 0 To UBound(tomb)
If akthossz + tomb(j) = szalhossza Then
temphossz = temphossz + akthossz + tomb(j)
akthossz = 0
szalakszama = szalakszama + 1
ElseIf akthossz + tomb(j) > szalhossza Then
temphossz = temphossz + akthossz
akthossz = tomb(j)
szalakszama = szalakszama + 1
Else
akthossz = akthossz + tomb(j)
End If
Next
If temphossz < osszhossz Then szalakszama = szalakszama + 1
If szalakszama <= mindarab + korrekcio Then
talalatszam = talalatszam + 1
akthossz = 0
aktoszlop = oszlop
s = ""
For j = 0 To UBound(tomb)
If akthossz + tomb(j) = szalhossza Then
akthossz = 0
Cells(sor, aktoszlop) = tomb(j)
sor = sor + 1
aktoszlop = oszlop
ElseIf akthossz + tomb(j) > szalhossza Then
akthossz = tomb(j)
sor = sor + 1
aktoszlop = oszlop
Cells(sor, aktoszlop) = tomb(j)
aktoszlop = aktoszlop + 1
ElseIf j = UBound(tomb) Then
Cells(sor, aktoszlop) = tomb(j)
aktoszlop = aktoszlop + 1
Else
Cells(sor, aktoszlop) = tomb(j)
aktoszlop = aktoszlop + 1
akthossz = akthossz + tomb(j)
End If
Next
sor = cel.Row + talalatszam * (mindarab + korrekcio + 1)
aktoszlop = oszlop
Exit Sub
End If
Next
End SubAz elején a korrekcio = 1 állítja be, hogy nem az elméleti minimális szálmennyiségre akarunk keresni, hanem 1-el többre(jelen esetben 20-ra).
Nálam ez nagyon gyorsan beleszalad egy lehetőségbe.
Persze még van rajt bőven finomítanivaló, de ezek már csak részletkérdések. A Exit sub miatt kilép az első találat után, ha ez nincs benne, akkor többet is keres, egészen a maxprobalkozas-ig. Valószínűleg nincs szükség annyi random számra, amennyi a tomb elemeinek a száma->ezt ki lehet tapasztalni... -
Delila_1
Topikgazda
válasz detroitrw #14329 üzenetére
Ha 2007-esnél régebbi verziód van, nézd meg [ezt] a kérdést, és a választ rá a 7311-es hozzászólásban.
2007-ben és fölötte szűrd az oszlopot szín szerint, és alkalmazd a RÉSZÖSSZEG függvényt.
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
Delila_1
Topikgazda
válasz detroitrw #16884 üzenetére
A másik lapra
A1-be =BAL(Munka1!A1;SZÖVEG.KERES("/";Munka1!A1)-1)
B1-be =JOBB(Munka1!A1;HOSSZ(Munka1!A1)-SZÖVEG.KERES("/";Munka1!A1))feltéve, hogy a 0x00/1y11 szöveg a Munka1 lap A1 cellájában van.
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
Delila_1
Topikgazda
-
Delila_1
Topikgazda
válasz detroitrw #16898 üzenetére
Szövegből oszlopok, határoló jel a + jel. Ez a példád szerint az A1-be írt adatot szétszedi az A1:G1 tartományba.
Könnyítésként soronként egy függvény megszámlálja, hogy hány féle adat van a sorodban.
=SZORZATÖSSZEG((A1:G1<>"")/DARABTELI(A1:G1;A1:G1))Utána már a darabteli függvénnyel megszámolhatod az egyes adatokat soronként.
J1 -be =DARABTELI($A$1:$G$1;1603)
K1-be =DARABTELI($A$1:$G$1;640)
L1-be =DARABTELI($A$1:$G$1;388)Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
Mutt
aktív tag
válasz detroitrw #16893 üzenetére
Hello,
adott:
A1=1603+1603+640+640+640+388+388 -> pl. B1=2db - 1603Gondolom a számok is változnak (nem mindig csak 1603, 640 és 388 ismétlődik), ezért csak függvényekkel megoldani körülményes, javaslatom a lenti makró (mindig csak a kijelölt cellát vizsgálja):
Sub Szetszed()
Dim arraySplit
Const strDelimiter As String * 1 = "+" 'tagolás jele
Dim arrayResult() 'itt lesznek a darabszámok és a számok/karakterek
Dim c As Long, i As Long
Dim blnHit As Boolean 'logikai jelző ha már létezik a vizsgált szám
arraySplit = Split(ActiveCell.Value, strDelimiter)
If IsArray(arraySplit) And UBound(arraySplit) > 0 Then
ReDim arrayResult(1 To 2, 1) 'találat létrehozása
arrayResult(1, 1) = 1 '1 db
arrayResult(2, 1) = arraySplit(0) 'első érték megjegyzése
'további számokon végigfut
For c = 1 To UBound(arraySplit)
blnHit = False
i = 1
Do
'ha már van ilyen szám, akkor eggyel növeljük a számlálót
If arraySplit(c) = arrayResult(2, i) Then
arrayResult(1, i) = arrayResult(1, i) + 1
blnHit = True
End If
i = i + 1
Loop Until blnHit Or i > UBound(arrayResult, 2)
'ha még nincs ilyen akkor megjegyezzük a számot
If Not blnHit Then
ReDim Preserve arrayResult(1 To 2, UBound(arrayResult, 2) + 1)
arrayResult(1, UBound(arrayResult, 2)) = 1
arrayResult(2, UBound(arrayResult, 2)) = arraySplit(c)
End If
Next c
Application.ScreenUpdating = False
For i = 1 To UBound(arrayResult, 2)
Cells(ActiveCell.Row, ActiveCell.Column + i) = arrayResult(1, i) & " db - " & arrayResult(2, i)
Next i
Application.ScreenUpdating = True
End If
End Subüdv.
A tanácsaimat ingyen adom. Ha nem tetszik, akkor kérlek ne kritizáld! / https://github.com/viszi/codes/tree/master/Excel
-
Mutt
aktív tag
válasz detroitrw #16910 üzenetére
Hello,
...ez a makró A1-A2000 -ig végigfusson?
Az elején és a végén kell egy kicsit módosítani:
Dim blnHit As Boolean 'logikai jelző ha már létezik a vizsgált szám
Dim cell As Range
For Each cell In Range("A1:A2000")
arraySplit = Split(cell, strDelimiter)
...<itt marad az eredeti> ...
For i = 1 To UBound(arrayResult, 2)
Cells(cell.Row, cell.Column + i) = arrayResult(1, i) & " db - " & arrayResult(2, i)
Next i
Application.ScreenUpdating = True
End If
Next
End SubA tanácsaimat ingyen adom. Ha nem tetszik, akkor kérlek ne kritizáld! / https://github.com/viszi/codes/tree/master/Excel
-
w.miki
veterán
válasz detroitrw #16915 üzenetére
Hali!
Excel(2003)ben hogyan lehet megcsinálni, hogy egy cellában a sor végéig pontok legyenek egy oszlopban?
Egy szótár.xls-ról van szó, most így néz ki:
A----------------------B-----------------------------C--------------D
accompaniment kísérő / kiegészítő braise dinsztel hústilyenre szeretném:
A----------------------B-----------------------------C--------------D
accompaniment..kísérő / kiegészítő braise.......dinsztel hústOlcsó kütyük: http://tiny.cc/fbkutyu
-
Excelbarat
tag
válasz detroitrw #16944 üzenetére
Hi!
Csak simán ahhoz is hozzárendeled ugyan azt a makrót. (ha netán ezt szeretted volna)
Ha a parancsgomb Űrlapvezérlő elem akkor jobb klikk rá és makró hozzárendelése, Ha ActiveX vezérlő akkor tervező mód bekapcsol és kétszer ráklikkelsz utána beírod a sub és end sub közé, hogy Call makronév. Remélem segített. -
félisten
válasz detroitrw #16976 üzenetére
Ennyit próbálj ki egy újonnan létrehozott üres táblán. Ha így is hiba lesz, akkor ott a VBA-val van gond.
Private Sub CommandButton1_Click()
CommandButton2_Click
End Sub
Private Sub CommandButton2_Click()
MsgBox ("CommandButton2_Click")
End Sub[ Szerkesztve ]
Mindenki tudja, hogy bizonyos dolgokat nem lehet megvalósítani, mígnem jön valaki, aki erről nem tud, és megvalósítja. (Albert Einstein)
-
félisten
válasz detroitrw #16976 üzenetére
Eltünt a netem, nem tudtam szerkeszteni...
Szóval ha az előző módszer megy kifogástalanul, akkor ennyit kell módosítani (példában Munka1 lapon van a command1 és a munka2-n a command2)Munka1 - itt fontos, hogy hivatkozni kell a munka2-re
Private Sub CommandButton1_Click()
Munka2.CommandButton2_Click
End SubMunka2 - itt az a fontos, hogy Public a deklaráció (enélkül munka1-en nem "látja" a command1)
Public Sub CommandButton2_Click()
MsgBox ("CommandButton2_Click")
End SubRitkán alkalmazzák az ilyen megközelítést, pont azért, mert körülményes és könnyen be lehet nézni, helyette Module-ban globálisan célszerű az eljárásokat megírni.
[ Szerkesztve ]
Mindenki tudja, hogy bizonyos dolgokat nem lehet megvalósítani, mígnem jön valaki, aki erről nem tud, és megvalósítja. (Albert Einstein)
-
félisten
válasz detroitrw #17005 üzenetére
"arra megkérhetnélek hogy egy ilyen kis szövegdobozos megjelenítős félét megtudnál osztani ami Nálad működik?"
Pont ezt tettem itt.
(Létrehozol egy új üres munkafüzetet, beszúrsz 2 darab ActiveX Command Button-t (egyik lesz a CommandButton1, másik a CommandButton2), rájuk klikkelsz duplán és az imént linkelt hsz szerint módosítod a makrót.Ennél egyszerűbb megoldás nincs és annak mennie kell.
Mindenki tudja, hogy bizonyos dolgokat nem lehet megvalósítani, mígnem jön valaki, aki erről nem tud, és megvalósítja. (Albert Einstein)
-
félisten
válasz detroitrw #17012 üzenetére
"ez nektek működik?"
természetesen nem, de csak azért, mert figyelmetlenül olvasol: [link]
(Public-ra nem módosítottad, utána már működik)[ Szerkesztve ]
Mindenki tudja, hogy bizonyos dolgokat nem lehet megvalósítani, mígnem jön valaki, aki erről nem tud, és megvalósítja. (Albert Einstein)
-
félisten
-
kőbaltazár
tag
válasz detroitrw #18780 üzenetére
Kedves detroitrw!
Köszi a gyors reagálást, sajnos csak most értem gépközelbe.
Az igazság az, hogy amit leírtál, tökéletesen működik, de én sajna nem írtam le egyértelműen, hogy mit szeretnék.
B22 : B37 mind lenyíló ablak, és I21 : I25 -ből veszi az adatokat. Ezt végig kell játszanom, a szerelvények ellenőrzése során.
A C22 : C37 tartományba, ha az érintetlen, és az eltűnt cella után berakná magától az 5 darab minusz jelet jó lenne (bár, hogy én hogy raktam be már nem tudom, mert mindíg valami képletet hiányolt). Természetesen a fogyás, a jelentős fogyás és a megrongálódott cella utánit nem lehet az excelre bízni, mert ez mindíg az adott helyzettől függ, és ez megint rám marad a helyszinen.
A D22 : D37 cellába a megtett intézkedésnek kellene kerülnie, az I36 : I38 tartományból a következők szerint.
Érintetlen, fogyás és jelentős fogyás esetén T, F.
Megrongálódott esetén Ú K új kihelyezése
Eltűnt esetén pedig SZ P szerelvény pótlása.
Ez az űrlap egy cégnél a rágcsálóirtás nyomonkövetését hivatott ellenőrizni, amivel az év végén majd trendanalízist tudunk készíteni. Szerintem a kutya sem fogja megnézni, de a higiénikus hölgynek kiadták, hogy meg kell csinálni, és neki is kb annyi fogalma van erről mint nekem. Mikor rágcsálóirtó lettem komolyan fogalmam sem volt arról, hog a patkányokat majd vonalkóddal kell ellátni, de már ettől sem állunk messze.Előre is köszönöm a segítséget Neked, és a Többieknek is nagyon sokat tanultam eddig is belőle.
[ Szerkesztve ]
Üdv: Kőbaltazár
-
kőbaltazár
tag
-
kőbaltazár
tag
válasz detroitrw #18803 üzenetére
Köszi, nagyon jó lett.
Ha én ebbe a Csótánycspdák.xls táblázatba szépen berakok 13 munkalapot pl: január; február... plusz egy olyat a végére, ami ősszegzi az egész évben felhasznált anyagot, ezt meg tudom csinálni.
Olyan létezik-e, hogy például egy Összegzés.xls tábla év végén a Csótánycspdák.xls és a hasonlóképpen felépített Rágcsálóirtó szerelvények.xls táblázatban is összeadja az egész évben felhasznált anyagokat?Üdv: Kőbaltazár
-
ADAM1337
nagyúr
válasz detroitrw #18831 üzenetére
Köszönöm meg vallom ennyire nem értek hozzá.
Valamiért nem engedi lehúzni csak soron belűl érvényes, átírtam a változókat is (cella számokat egyel lejebb és arra hibát dob.)Rájöttem a webes felület a számok után is szóközt hagyott azt javítom, köszönöm a segítséget !
[ Szerkesztve ]
-
Térközjelző
csendes tag
válasz detroitrw #20123 üzenetére
Köszönöm szépen a gyors segítséget!
Elnézést, de most jutottam gép közelbe.
Az elrendezés, és egyebek tökélete lett.
Mivel nem fogalmaztam pontosan ezért akad a dologgal egy kis probléma:
A kategóriák nem pontosan az utazás hosszát adják, hanem pl az adott távom érvényes menetjegyek kategóriáját, valahogy így:
84km >> 90-es kategória, mert 80 fölött még 4 km le kell utazni
36km >> 40-es kategória, mert 35 fölött még 1 km le kell utazni
92km >> 100-as kategória, mert 90 fölött még 2 km le kell utazniEbből is látszik, hogy a köznapi életben elég felületesen fogalmazunk.
Köszönöm szépen.
[ Szerkesztve ]
-
fuli07
csendes tag
válasz detroitrw #20636 üzenetére
Ha van egy sport eredmény mondjuk 2-1!
Megvizsgálja hogy a 2 nagyobb mint 1 akkor a hazai csapat cellaértéke 3 ha fordítva akkor nulla ha egyenlő akkor 1. -->ezt ugyahogy megoldottam 4 HA függvénnyel ha tudsz egyszerűbbet, váromViszont ha nincs eredmény beírva akkor NE vizsgálja, mert különben mindig beír 1-es értéket!
Köszönöm
-
veterán
válasz detroitrw #20812 üzenetére
koszi a faradozast, de sajnos ez sem lesz jo, a felso sorban tobbszor is elofordulnak a gyumik.
olyan valami kell, ami megszamolja hany kulonbozo gyumi van, es ezek ala listazza egyenkent az ertekeket. a tobbi szukseges muvelet is bonyolitja a dolgot, de azokat meg tudom csinalni
Jah, axt nem irtam, hogy valami vba kod kellene.
[ Szerkesztve ]
"a jövötsajnos nemlehet tudni csakhamárotvagy deakormegmár azajelen"
-
csferke
senior tag
válasz detroitrw #20833 üzenetére
ez nem jó?
=AVERAGEIF(B:B;E3;C:C)
igen, ez jó lett, kösziMost azonban tovább bonyolítanám a kérdésem.
A C oszlop adataiból van egy diagramom, havi lebontásban a következő tartományok.
=$C$2:$C$8
=$C$9:$C$15
=$C$16:$C$22Hogyan tudnám automatikusan bővíteni a diagramot amikor új évet adok hozzá? =$C$23:$C$29 ??
[ Szerkesztve ]
-
Delila_1
Topikgazda
válasz detroitrw #21130 üzenetére
A képlet végére írj egy szorzást, ami számmá alakítja a függvénnyel leválasztott szöveg típusú részt. Természetesen a szorzó 1 legyen, hogy az érték ne változzon.
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
Új hozzászólás Aktív témák
- Kerékpárosok, bringások ide!
- Telekom otthoni szolgáltatások (TV, internet, telefon)
- Milyen CPU léghűtést vegyek?
- Háztartási gépek
- AMD Ryzen 9 / 7 / 5 7***(X) "Zen 4" (AM5)
- Az NVIDIA szerint a partnereik prémium AI PC-ket kínálnak
- Ukrajnai háború
- WLAN, WiFi, vezeték nélküli hálózat
- Kormányok / autós szimulátorok topicja
- Helldivers 2 (PC, PS5)
- További aktív témák...
- Eredeti Microsoft termékek - MEGA Akciók! Windows, Office Pro Plus, Project Pro, Visio Pro stb.
- Game Pass Ultimate előfizetések 1 - 25 hónapig azonnali kézbesítéssel a LEGOLCSÓBBAN!
- PC JÁTÉKOK (OLCSÓ STEAM, EA , UPLAY KULCSOK ÉS SOKMINDEN MÁS IS 100% GARANCIA )
- Bitdefender Total Security 3év/3eszköz! - "Tökéletes védelem most kedvező áron..."
- Windows 10 11 Pro Office 19 21 Pro Plus Retail kulcs 1 PC Mac AKCIÓ! LEGOLCSÓBB! Automatikus 0-24