- VoLTE/VoWiFi
- Honor Magic5 Pro - kamerák bűvöletében
- Xiaomi Watch 2 Pro - oké, Google, itt vagyunk mi is
- Milyen okostelefont vegyek?
- Apple Watch
- Android alkalmazások - szoftver kibeszélő topik
- Xiaomi 15 - kicsi telefon nagy energiával
- Motorola Edge 50 Neo - az egyensúly gyengesége
- Realme GT Master Edition - mestermunka
- One mobilszolgáltatások
-
Mobilarena
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
-
-
nemesati
csendes tag
válasz
Delila_1 #35261 üzenetére
Igen olvastam, nagyon köszi.
https://data.hu/get/10520212/KW20.xlsx
Feltöltöttem. A kérésem annyi lenne, hogy a rajzszámot beírni szeretném, nem pedig kiválasztani. Csak a munkaszámot szeretném kiválasztani.
Első fül az IGÉNY, ebben szerepelnek a munkaszámok, de van egy "igény" fül is, amiből adatokat nyerek ki (munkaszámhoz tartozó summ. legyártott darabszám kimutatással)
Külső excelből is hív be adatokat táblázatként, ezek nem fognak frissülni.
-
logitechh
csendes tag
válasz
Delila_1 #35218 üzenetére
szia amit megadtál az tök jól müxik egy üres munkalapon
De nekem lényeges lenne, hogy hagyja figyelmen kívül , hogy az A oszlop vagy a Q oszlopba vannak sorok amelyek esetleg magasabbak mint a többi.
Nem lehet a betűméret bekérős módszert alkalmazni?
(Ez egy munkalap levédős makróm szövegdoboza)tehát ha itt azt irom hogy 3 akkor 3as legyen az F16
166 tartományban a betűméret
-
n42
tag
válasz
Delila_1 #35196 üzenetére
Szia! Én úgy gondoltam, hogy (pl) A1 cellát kitöltöm, akkor A2 cellában megjelenik a dátum és idő!
Ami még talán nehézség, hogy azt is ki szeretném számolni, hogy hány percig tartott a termelés, tehát az első mintavételtől az utolsó mintavételig tartó idő is kellene, ami ráadásul egyik napról átnyúlhat a másik napra. -
logitechh
csendes tag
válasz
Delila_1 #35037 üzenetére
Hali!
Nem tudom miért írta ki azt hogy várjak türelemmel de majd legközelebb kifotózom. de az volt a furi hogy senki más hozzászólására nem tudtam reagálni.
Tehát küldik ezt a munkalapot:
majd én ebből kiásolom amit kell Coszloptól F oszlopig .
erre már megcsináltam a makrót hogy szűr és másol.
Az innen kimásolt értékeket illesztem be ide:
B oszloptól az E oszlopig . Ez lehet egyszerre akár 50 sor is de ez változó.
Majd az F oszloptól az L oszlopig az újjonan beillesztett sorokba szeretném lemásolni a képleteket:
csak erre szeretnék makrót mert amit makrórögzítővel veszek fel és módosítok mindig csak egy sort sikerül másolni és beilleszteni.És ha mondjuk 45 sort illesztek be az B oszloptól F oszlopig akkor ugyan úgy 45 sorba kellene beilleszteni a képleteketEzután szeretném az A oszlopot sorszámozni.
a keretezés az már megvan ahogy a Delila_1 megmutatta. -
Hun91FaTe
csendes tag
válasz
Delila_1 #30058 üzenetére
Ezzel kapcsolatban lenne még egy kérdésem, hogy valahogy meg lehet azt csinálni, hogy ha alkalmazom a képletet, a cellában fixen írja bele az eredményt, ne változzon többet. Ez azért is fontos lenne, mert után arra a cellára hivatkozva számoltatnék tovább, ahol ugyanúgy hibát dob. Köszi előre is!
-
mayer.tamas
csendes tag
válasz
Delila_1 #35005 üzenetére
Szia,
Próbálom leírni, hogy konkrétan mi most a folyamat.
Van egy saját helpdesk szoftverünk amiből a jelenleg nyitott hibákat kiexportálom excelbe.Itt különböző makrókkal szerelői csoportokra szedem, illetve tervszerű munkákat külön válogatom.
Ezek 2 kattintással elkészülnek.A táblázat minden esetben csak a nyitott hibákat tartalmazza.
Reggel lehúzok egy friss listát a hibákról és megcsinálom ezt a táblázatot, amit leegyeztetek a szerelőkkel, beütemezzük javításra (ezek kerülnek megjegyzésként a sorok végére)
Majd a nap végén megteszem újra ugyanezt ugyanezzel a táblázattal (előtte mentés másként új névvel), de előtte törlöm ezeket a megjegyzéseket és makróval újra szétszedem és frissítem az adatokat.
Ebben már lesznek változások a reggelihez képest, mert napközben jöttek újabb hibák és időközben el is készültek.
Tehát nem tudom egy az egyben visszatenni a megjegyzéseket, hanem soronként össze kell hasonlítanom a reggeli táblázat soraival és ott ahol egyezik a sor, átmásolom a megjegyzéseket.
Remélem így érthetőbb.
-
sztanozs
veterán
válasz
Delila_1 #34997 üzenetére
Általánosságban lehet, hogy egy range selctor kellene és akkor lehetne használi azzal az öszes beépített függvényt:
Function SzinSzerint(mintacella As Range, tartomany As Range) As Range
Set SzinSzerint = Nothing
Dim CV As Object
For Each CV In tartomany.Cells
If CV.Interior.Color = mintacella.Interior.Color Then
If SzinSzerint Is Nothing Then
Set SzinSzerint = CV
Else
Set SzinSzerint = Application.Union(SzinSzerint, CV)
End If
End If
Next
End Function -
Fferi50
Topikgazda
válasz
Delila_1 #34997 üzenetére
Szia!
Remek.
Viszont gondolva a feltételes formázás lehetőségére, érdemes lenne az Interior.Color helyett a DisplayFormat.Interior.Color tulaljdonságot használni. (Nyilván megfelelő Excel verzió kell hozzá, de a manapság sűrűn használatosok már tartalmazzák.)Ezzel akár szabadalmaztathatnád is.
Üdv.
-
mdk01
addikt
válasz
Delila_1 #34943 üzenetére
A CTRL+G megoldásra a válasz, hogy "nincs ilyen objektum"
A másik kapcsolatos megoldásnál, pedig nincsenek kapcsolatok, nekem az teljesen üres.Nem tudom egyébként, hogy mit csináltam, mert 1,8Mb után a köv. mentésem, már 21Mb lett.
Majd mindjárt beleásom mégjobban magam, de nem egészen értem.
Ha van még ötleted szívesen veszem.
Köszönöm -
-
Delila_1
veterán
válasz
Delila_1 #34910 üzenetére
Rájöttem, hogy félreértettem a kérdésedet.
A Munka1 lapra felvittem 2 listboxot. Mindkettő ListFillRange tartománya azonos, az a terület, ahova a füzetbe bevittem a mértékegységeket. Persze makróval is fel lehet tölteni a listboxokat. A 2 listboxban kiválasztod a 2 mértékegységet, majd beírod a függvényt, az átszámítandó érték megadásával [pl. =konvert(A1)].
Ami nem működött:
Function Konvert(ertek As Range)
If ertek > "" Then
Me1 = Munka1.ListBox1.List(Selected) ': MsgBox Me1
Me2 = Munka1.ListBox2.List(Selected) ': MsgBox Me2
Konvert = Application.WorksheetFunction.Convert(ertek, Me1, Me2)
End If
End FunctionA Me2 értéke valamiért azonos a Me1-gyel. Nyilván bennem van a hiba, csak nem találom, mit nem adok meg jól.
A működő:
Function Konvertal(ertek As Range)
If ertek > "" Then
For x = 0 To Munka1.ListBox1.ListCount - 1
If Munka1.ListBox1.Selected(x) = True Then
Me1 = Munka1.ListBox1.List(x)
Exit For
End If
Next
For x = 0 To Munka1.ListBox2.ListCount - 1
If Munka1.ListBox2.Selected(x) = True Then
Me2 = Munka1.ListBox2.List(x)
Exit For
End If
Next
Konvertal = Application.WorksheetFunction.Convert(ertek, Me1, Me2)
End If
End Function -
csferke
senior tag
válasz
Delila_1 #34874 üzenetére
Szia Delila!
Más elfoglaltságom miatt csak tegnap tudtam foglalkozni a makróval amit írtál. Meg nem is akartalak állandóan zavarni sorozatos kérdésekkel hanem inkább próbálkoztam, tanultam és bővítettem. Most már úgy dolgozik ahogyan szeretném.
Ezzel eljött az ideje egy NAGY köszönetnek
üdv -
Traxx
őstag
válasz
Delila_1 #34863 üzenetére
és sztanozs: köszönöm
Delila hozzászólása volt a kulcs, az alapján elkezdtem keresgélni, és egy külföldi fórumon találtam egy hasznos makrót, pont ilyen esetekre. Sikerült szépen lecserélnem az összes képet (és jól gondoltad, régi logót újra
). És igen, azonos helyen voltak a logók. Ha valakinek még szüksége lenne rá, akkor közzé is teszem, lefordítva a használat korlátjait, és a makróban a megjegyzéseket, szövegdobozokat. Egy új fájlba másoltam bele a makrót, amit utána elmentettem, aztán hajrá
A makró működéséhez azért volt pár feltétel, ami szerencsére nálam adott volt:
- ha a munkalap védett, akkor átugorja, és nem cseréli le a képet
- ha a fájl csak egyetlen képet tartalmaz, akkor
- a régi képet lecseréli az újra, ugyanabban a pozícióban, ahol az elődje volt
- az új képen nem végez semmilyen átméretezést, szóval megfelelő méretűt célszerű választani
- a fálj ugyanazon néven, de másik (LOGONEW) mappába kerül elmentésre; ezt a mappát létre kell hozni abban a könyvtárban, ahol a cserélendő fájlok vannak
- és nyilván a művelet előtt nem árt egy biztonsági mentésÉs a makró:
Sub ReBrand()
Dim PCount As Long, I As Long, Candid As Long, myPath As String, myFFile As String
Dim LogSh As Worksheet, LogoPos As String, newLogo As String, NextLogLine As Long
Dim mySk As Long, myRep As Long, myTim As Single
'
newLogo = "D:\logo2.jpg" '<<< Az új logo elérési útja és neve
'
'Figyelmeztető üzenet:
rispo = MsgBox("Add meg a könyvtárat, amelyek fáljaiban ki kell cserélni a logo-t" & vbCrLf _
& "A könyvtárnak tartalmaznia kell egy ÜRES mappát, aminek a neve ""LOGONEW""" _
& vbCrLf & "Nyomd meg az OK-t a folytatáshoz, vagy a Cancelt a folyamat megszakításához.", vbOKCancel)
If rispo <> vbOK Then Exit Sub
'A fájlok elérési útjának megkapása:
With Application.FileDialog(msoFileDialogFolderPicker)
.Show
If .SelectedItems.Count = 0 Then
MsgBox ("Nem történt kiválasztás, a folyamat megszakítva")
Exit Sub
End If
myPath = .SelectedItems.Item(1)
End With
'
'Indítás:
myTim = Timer
Set LogSh = ThisWorkbook.Sheets(1) 'A tevékenységek naplózása a munkalapon
'
myFFile = Dir(myPath & "\*.xls*") 'megkapjuk az első fájl nevét
Application.EnableEvents = False
Do
PCount = 0
If myFFile = "" Then Exit Do 'Lépjen ki, ha nincs fájl
Workbooks.Open myPath & "\" & myFFile
'A fájl nevének naplózása:
NextLogLine = LogSh.Cells(Rows.Count, 1).End(xlUp).Row + 1
LogSh.Cells(NextLogLine, 1) = myFFile
'Számolja meg, hány kép van:
For I = 1 To Worksheets.Count
LogSh.Cells(NextLogLine, 2).Offset(0, I) = Sheets(I).Name
If Sheets(I).Pictures.Count > 0 Then
PCount = PCount + Sheets(I).Pictures.Count
If Sheets(I).ProtectContents Then PCount = 999
'Naplózási infó a munkalapokon:
LogSh.Cells(NextLogLine, 2).Offset(0, I).Value = "*--" & PCount & "--*--" & Sheets(I).Name
Candid = I
End If
If PCount > 1 Then '>1, nem kell szkennelni több munkalapot
Exit For
End If
Next I
If PCount = 1 Then 'Fájl kijelölve a kicserélésre
Worksheets(Candid).Select
If UCase(Left(ActiveSheet.Pictures(1).Name, 7)) = "PICTURE" Then
'ok, kicserélés:
ActiveSheet.Pictures(1).Select
LogoPos = Selection.TopLeftCell.Address
Selection.Delete
Range(LogoPos).Select
ActiveSheet.Pictures.Insert(newLogo).Select
Range("A1").Select
'Napló eredmény:
LogSh.Cells(NextLogLine, 2).Value = ">>>>>: " & LogoPos
myRep = myRep + 1
'Mentés az új mappába:
ActiveWorkbook.SaveAs (myPath & "\LOGONEW\" & myFFile)
Else
'Napló eredmény:
LogSh.Cells(NextLogLine, 2).Value = "SKIPPED--" & PCount
mySk = mySk + 1
End If
Else
'Napló eredmény:
LogSh.Cells(NextLogLine, 2).Value = "SKIPPED--" & PCount
mySk = mySk + 1
End If
Workbooks(myFFile).Close savechanges:=False 'Bezárás
myFFile = Dir 'Következő fájl
Loop
Application.EnableEvents = True
'
'Végső üzenet:
MsgBox ("Szükséges idő (secs): " & Format(Timer - myTim, "0.00") & vbCrLf _
& "Lecserélve: " & myRep & vbCrLf & "Átugorva: " & mySk)
End SubAz eredeti forrás: [link]
-
csferke
senior tag
válasz
Delila_1 #34866 üzenetére
Bocsi a becsúszott smiley miatt de azért köszönöm.
A
C:D
oszlop adatait kellene összeadni és osztani 17-el.
Az osszeg sorban átírom B-B => C-D, eddig ok, kijavítom.
Mivel a B oszlopban van a mutató így megvan a kezdő dátum is kDatum amit majd kiíratok F1-be.Az egyszerűbb megoldás Average nem jó, nem az átlag kell mint eredmény.
A logikádat követve úgy látom, hogy előbb kiválasztod a kezdő mezőt a B oszlopban és ezután indítod a makrót. Így sem rossz de én úgy szeretném, hogy elindítom a makrót és addig várakozik amíg egérrel kiválasztok egy dátumot/mezőt, klikk az egérrel, és csak ezután folytatja a futást.
köszi
-
kirattila
újonc
válasz
Delila_1 #34822 üzenetére
Sziasztok!
Nagyon köszönöm a gyors és kielégítő pontos válaszaitokat!
Teljesen jó amit tettetek!!!
A túlóra számítás végeredményét nem igazán értem mert ottBELÉPÉS KILÉPÉS ÓRA SZÜNET LEDOLG.ÓRA TÚLORA
6:00 14:30 8:30 0:30 8:00
5:40 13:00 7:20 0:30 6:50
5:00 14:50 9:50 0:30 9:20 0,055555556 ezt az eredményt adja???Köszönöm a segítségét mindeninek
-
DeFranco
nagyúr
válasz
Delila_1 #34809 üzenetére
meg tudom oldani így, ez nem probléma csak keresek egy "elegáns" megoldást, mert szerintem létezik, csak valamiért nem találom vagy nincs meg a szikra... hogy értsd, valami ilyesmire gondolok:
=MATCH(lookup_value;lookup_array;[match_type])
ahol a
lookup_value
nem egy érték hanem egy lista. csomó függvény esetében ez megoldható, szerintem valahol aKERES
,FKERES
,VKERES
,DARABHATÖBB
tájékon kellene lenni itt is egy ilyen egy függvényes vagy összetett függvényes megoldásnak.ilyen a+b+c vagy ha(ha(ha(ha megoldással meg tudom csinálni csak nem szép
-
DeFranco
nagyúr
válasz
Delila_1 #34805 üzenetére
igen ez a megoldás "triviális", valami "tömörebbre" gondoltam, kb. a tárgyalt elv szerint, tömbbet tömbbel összehasonlítva, vagy tömbben megkeresve értéket, de úgy hogy az érték amit keresek több érték vagylagos kritériummal... sejtem-érzem hogy van ilyen de nem áll most rá az agyam és a net sem segít, pedig az ilyenek ha nem is magától értetődőek de összehozhatóak...
-
mdk01
addikt
-
0P1
aktív tag
válasz
Delila_1 #34656 üzenetére
De pont az volt a cél, hogy string-ként deklaráljuk, mert ha szám, akkor beleütközünk az excel 15 számjegyes korlátjába, és kerekíteni fog a függvény (ha meg úgysem haladjuk meg, jó az előző válaszomban írt képletes változat is, akkor nem kell VBA)
A lehetséges elválasztók vizsgálata viszont jó ötlet, ez viszont csak a VBA-s megoldásban oldható meg, csak nem tudom, hogy tudom kinyerni VBA-val a tört elválasztót.
-
0P1
aktív tag
válasz
Delila_1 #34655 üzenetére
Woww, ez szép, de abban 99,99%-ig biztos vagyok, hogy az eredeti NUMBERSTRING függvény (akármelyik táblázatkezelőből is származik) nem azt csinálta, hogy kibetűzte a beírt számot, számtalan okból kifolyólag is.
Bár jobban meggondolva, a függvény magyarítása alapján pigster lehet, hogy valami ilyesmit keres, ez nekem eszembe se jutott. (gondolom, nem sok gondot fordítottak a Microsoftnál arra, hogy értelmes magyar nevet adjanak egy rejtett, nem támogatott függvénynek). Te kitalálod a kérdezők gondolataitSzerintem inkább olyasmit csinálhatott, mint a SZÖVEG(), csak annyi korlátozással, hogy nem bármilyen értéket tudott szöveggé alakítani, hanem csak számot. De most már tényleg érdekel ennek a függvénynek az eredete, este utána kutakodok egy kicsit, porosodik valahol a padláson pár öreg quattro pro, Visicalc és Lotus 1-2-3 kézikönyvem, ezek közül lesz valamelyik (utóbbit még használtam is a 90-esek évek közepén, és nekünk még a fősulin is ezen tanították a táblázatkezelést)
-
-
0P1
aktív tag
válasz
Delila_1 #34520 üzenetére
Hát elég nehéz képek alapján kitalálni, mit szeretne pontosan a kérdező, ezért is lenne jó, ha mindenki feltöltené valahova a filet.
Nekem mindenesetre az sehogy sem jött le az ábrából, hogy az alapadatokban is lenne "hét" oszlop, és az alapján is kellene összesíteni.
-
botond2225
csendes tag
válasz
Delila_1 #33488 üzenetére
Szia,
Arról lenne szó, hogy FKERES-el kikeres értékeket, de ha nem talál, akkor ezt írja a cellába:
#HIÁNYZIK
Erre gondoltam, hogy makrót írni, hogy egy sima cserével az oszlopban, ahol ez szerepel: #HIÁNYZIK cserélje le üres értékre.
Ha makróba elmentem, mégsem fut le, ha nem makróval futtatom, akkor meg megcsinálja.
Ez mitől lehet?
Ez lenne a makró:
Sub HianyzikotKitorliJo()
'
' HianyzikotKitorliJo Makró
''
Columns("AM:AM").Select
Selection.Replace What:="#HIÁNYZIK", Replacement:="", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
End Sub -
joysefke
veterán
-
kőbaltazár
tag
válasz
Delila_1 #34432 üzenetére
Szia!
Megcsináltam, és működik.
De ha egy pár sort elrontok, vagy ki kellene törölnöm valamiért, akkor egyesével engedi, de ha többet jelölök ki akkor megjelenik a
Run-time error '13'
és a
Target.Value = UCase(Target.Value)
sor sárgán jelenik meg, és a makró nem fut, csak ha újra előlről kezdem. -
.Farkas.
tag
válasz
Delila_1 #34434 üzenetére
Éééééés műűűködik.Örök hálám
Még esetleg egy olyan kérdésem lenne, hogy van egy pivotom amiben slicerral váltok egy névre és ezután egy gombra klikkelek ami behozza a név alapján a képet.
Valahogy nem lehet ezt automatizálni, hogy amikor a slicer valtozik meghivja a függvényt?
-
föccer
nagyúr
válasz
Delila_1 #34388 üzenetére
Próbáltam, de nem jött össze össze vele. A kérdéses oszlopban "0034"-ként vannak (meg egyéb 4 jegyűként) vannak a kódok, és pontosan ezt kell utána vissza kerestetnem másik részen, ezért nem konvertálhatom számmá, mert akkor "34"-et kapok. Marad így, de nem gáz, egyetlen egy cellába kiszedem a szükséges adatot, arról meg tovább tudom vinni a szemantikát. Szerencsére ez már a szűrt adatokon kell csak elvégezni, ahol az összes leszűrt elemnél ugyan az a végeredmény, így tényleg csak 1x kell használni az indirektet.
üdv, föccer
-
tgumis
tag
válasz
Delila_1 #34326 üzenetére
Köszi
Amúgy mi ennek a neve? Mármint a kis gomboknak mert sem ikon sem gombként nem találom.
Próbáltam a Office könyvtárban megkeresni hogy melyikek tartalmaznak valamiféle kép kiterjesztést de semmi. Nem emléxel véletlenűl a progi nevére? Engem nagyon zavar már hogy semmi egyedit nem tudok íde berakni -
föccer
nagyúr
válasz
Delila_1 #34321 üzenetére
Több lapról is össze tudja szedni a cuccokat?
A problem vele az lesz, hogy az értékes információ nem közvetlenül a táblázatból leszűrhető adatokban van, hanem azon elvégzek egy fél csokor műveletet és ezek végeredménye a hasznos információ. Szabvány szerinti kiértékelés, ami során figyelembe kell venni az egyedi értékeket, a minimum, illetve az átlagokat. Mind a háromra külön-külön szorzó tényezőket kell figyelembe venni, összehasonlítgatni őket és ha a határérek felett van mind akkor kijön, hogy megfelelt-e vagy sem. És ez még csak a gyártásellenőrzés. A szakmai kiértékelés része már kész van, de ott nem kellett ezt megcsinálni, mert az egészen más téma.
-
föccer
nagyúr
válasz
Delila_1 #34317 üzenetére
Számolnom, keresnem kell a szűrőfeltétel alapján. Ha számként lennének tárolva, akkor ki tudnám szedni őket összegzéssel. Egyenlőre kézzel kell külön begépelnem a 4 jegyű kódot, ami + hibaforrás + idő.
A cél az, hogy az F511 cellába tudjam belerakni a szűrőfeltételt, makró nélkül, mindezt úgy, hogy megmaradjon szövegként. A különböző szűrések, különböző sorokat rejtenek el, amit az összegzés függvénnyel szépen lehet kezelni, de az csak számokkal működik, szöveggel nem.
üdv, föccer
-
radam
csendes tag
válasz
Delila_1 #34313 üzenetére
Sajnos az Indirekt függvény használatát csak az adott fájlon belül értem.
='D:\Próba\[20170225.xlsx]Munka1'!B3A összesítő.xlsx Munka1 lapjának B3 cellája most a fenti hivatkozást tartalmazza, a B2 a dátumot (2017.02.25). A cél az lenne, hogy a C3 cellában ugyanennek a cella értékét hozza át csak a C2-ben szereplő dátum szerinti fájlból. Hogyan kell kinéznie az Indirekt szintaktikájának?
Új hozzászólás Aktív témák
Hirdetés
- ÁRGARANCIA!Épített KomPhone i5 13400F 16/32/64GB RAM RX 7700 XT 12GB GAMER PC termékbeszámítással
- ÁRGARANCIA!Épített KomPhone Ryzen 7 5700X3D 32/64GB RAM RTX 5070 12GB GAMER PC termékbeszámítással
- Dell OptiPlex MT/SFF 3040, 3050, 7050, 3060, 3070, 5070, 7060 /WIN 11 - SZÁMLA- GARANCIA
- BESZÁMÍTÁS! MSI SUPRIM X RTX 4080 16GB videokártya garanciával hibátlan működéssel
- Microsoft Surface Book 3 - 15 col
Állásajánlatok
Cég: Promenade Publishing House Kft.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest