-
GAMEPOD.hu
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
-
Attas
aktív tag
Rosszúl fogalmaztam. Elnézést. A fálj neve és az útvonal más. Az M1 cella a fájl neve Gipsz Jakab, a mentési utvonal másik munkalapon (munkalap 2) A1 cella tartalmazza. : S:\2021\mentés\
Bocsánat ha félreérthető voltam. Már így is sokat segítettetek.
"Az élet olyan mint az ásás. Néha pár gyökér feltart, de annak jól odacsapsz és mehetsz tovább!"
-
Bozso68
senior tag
Végül a www.futas.net oldalán keresztül találtam meg a megoldást.
Excel táblában levő postacímeket a Pulover's Macro Creator segítségével beírtam a honlap keresőmezőjébe, egy másikon meg már a GPS koordináta olvasható. Ezt a Creatorral visszaemeltem az excelbe, és meg is van oldva. Kb 2 sec/címmel tudok haladni.
Kb 15000 címet kell így beolvasnom. Lassan, de biztosan végezni fogok vele. -
DGery
aktív tag
igen, ez igaz, de....
jó lenne, ha nem kellene minden egyes alkalomal eljátszani, mert akkor naponta 40-50 alkalommal kellene ez a másolás-beillesztés....by DGery® c.o. ///// MacBook Air M1 / iPhone 12 128GB / iPhone SE 2020 / iPad 9 WiFi only 64GB / Apple Watch Series 5 / Xiaomi Mi Scooter 3 / HP EliteBook 850 G7 / Xbox Series S / Dreame D10s Pro / iKier K1 12W
-
Anulu79
addikt
Igen erre gondoltam. Viszont a formáummásolás nem akar működni mert mert minden cella ugyanarról az egy celláról veszi a formátumot. Aztán ha később módosítok az A és a C cellán akkor már nem jó mert az elején lévő adatoknak meg kell maradniuk.
Kicsit nehéz elmagyaráznom. -
-
Fferi50
őstag
Szia!
Ha makró lehet benne, akkor a Thisworkbook modul Workbook_Open eseményébe beteheted, hogy az aktuális dátum függvényében figyelmeztessen.
Ha nem lehet makró, akkor egy cellába írnám a figyelmeztetést és feltételes formázással tenném láthatóvá/láthatatlanná.
Persze figyelni kellene az aktuális felhasználó szabadság felhasználását is. A konkrét megoldás függ a személyek és szabadságok kezelésétől.
Üdv.[ Szerkesztve ]
-
addikt
-
Fferi50
őstag
Szia!
Gondolom, hogy akivel nincs baj, annak nem szeretnél üzenetet adni. Ezért érdekes a belépés módja.
Az Application.UserName visszaadja, hogy éppen ki az aktuális felhasználó. Miután ez egy megosztott fájl, ezért ez a felhasználó név a Windows név lesz. Ezeket a neveket kellene párosítani a felhasználók munkalapon használt neveihez. Így már lehet keresni a hozzá tartozó információkat.
A minta makró, amit a Thisworkbook kódlapjára kell bemásolni:Private Sub Workbook_Open()
If Date < DateSerial(Year(Date), 8, 1) Then Exit Sub ' ha aug. 1 előtt vagyunk nem kell semmit tenni
Dim cl As Range,szemely As String
szemely = Application.UserName
Select Case szemely
Case "Név1" 'a belépő windows neve
szemely = "jóska" ' a belépő táblázat beli neve
Case "Név2"
szemely = "pista"
'...felsorolod a további név lehetőségeket
End Select
'vagy
' a belépők windows és táblázatbeli neve a hivatkozott tartományban van, elől a windows név
' pontos legyen mindkét név beírása a tartományba'
szemely = Application.VLookup(szemely, Sheets("Munka1").Range("A2:B20"), 2, 0)
'eddig tart a belépő azonosítása
Set cl = Sheets("Munka1").Rows(6).Find(what:=szemely, LookIn:=xlValues, lookat:=xlWhole)
If cl Is Nothing Then
MsgBox szemely & " nem szerepel a felhasználók között!", vbCritical
Exit Sub
Else
If cl.Offset(-4, 0).Value < 0.7 Then
MsgBox szemely & " még csak " & cl.Offset(-4, 0).Text & " szabadságot használtál fel!"
End If
End If
End Sub
A próbához az első sort (If Date) kommenteld ki, így látni fogod hogyan működik. A dátumot átírhatod tetszésed szerint.
Én jobbnak látom a második megoldást, amikor a felhasználó nevek párosítása táblázatban van és Vlookup-pal keressük meg. Így a felhasználók változását csak a munkalapon kell átírni.
Remélem erre gondoltál.
Üdv.
-
addikt
-
bteebi
veterán
Ha úgy próbáltam, hogy
Zscore = WorksheetFunction.Norm_S_Inv((WorksheetFunction.Rank(score, cnt, 1)_
_ - 0.5) / WorksheetFunction.Count(cnt))
, akkor már legalább számolt valamit... de nem jót. Aztán átírtam a Long-ot Double-re, és jó lett. Szóval köszi! Tehát:Function Zscore(score As Variant, cnt As Range) As Double
Zscore = WorksheetFunction.Norm_S_Inv((WorksheetFunction.Rank(score, cnt, 1)_
- 0.5)
/
WorksheetFunction.Count(cnt))
End Function
Mondjuk az még érdekes, hogy
WorksheetFunction
nélkül hogy lehetne szebben/rövidebben.Cancel all my meetings. Someone is wrong on the Internet.
-
félisten
Ez nem jó.
Mindig az ellenkezőt kell kizárni, ha kisbetűt vizsgálsz, akkor nagybetűs vizsgálat kell, ha nagybetűt vizsgálsz, akkor meg kisbetűs vizsgálat kell.A Te képleted arra jó, hogy ha azt vizsgálnánk, hogy tartalmaz-e nagybetűt a cella.
[ 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)
-
underdark
aktív tag
Ha az A oszlop Igaz, akkor egy számmal növekszik a B oszlop, ha hamis akkor el vesz egyet
A C cella pedig egy számláló lenne, tehát ha most kéne látnom akkor -4 lenne
Ez a lista addig menne, amíg a C cella el nem érné az 1 értéket
Nem tudom jobban leírni mit akarok
"akinek minden a vállán nyugszik, nem nyugszik senki vállán"
-
tomi5244
őstag
Bocsánat, az lemaradt. De igazából arra nincs időkeret megszabva. Kis mennyiségben nyilván nem ültetünk, szóval 1 óra rezsidíj (3.900.-) mindig összejön, ha felszorzom a db-ot. A gondom inkább az, hogy a végösszegnél a 3.900.- soha nem jön ki, mindig tört óra a végeredmény.
Fenti példa alapján 18db örökzöld 16.920.- ez pedig 4,33 óradíjra jön ki. Nekem már az is elég lenne, ha egész órára kerekítene a képlet. És utána hozzá igazítaná az árat, mert ügye nekünk kifele közölni kell az ültetési költséget. Tehát 16.920.- = 4,33 óra -> 4 óra = 15.600.-
Itt nem is lenne kikötés a negyed órás kerekítés, mindig egész óra elérése lenne a cél.
Nem tudom, hogy így átlátható e?
[ Szerkesztve ]
-
-
BigBadPlaYeR
senior tag
Köszönöm, jó leírás a cella formázásról; de sajnos nem lehet megoldani vele amire szükségem lenne.
Képlettel sikerült elérni egy kerülő-megoldást, de hátha másnak is jól jön:=HA((A1-INT(A1))>0;CSERE(A1;SZÖVEG.KERES(",";A1);1;".");A1)
(Leellenőrzi, hogy van-e tört része; ha igen, megkeresi, hogy hol a tizedes elválasztó, és lecseréli pontra)"Furcsa, hogy az ember milyen keveset ér el, ha nem is próbálkozik."
-
Fferi50
őstag
Szia!
Pl.Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Intersect(Target, Range("A1:B8")) Is Nothing Then
Target.Value = "akarmi"
End If
End Sub
Ha a kiválasztott cella nem esik az A1 : B8 tartományba, beleírja a cellába a szöveget.
[Itt a helpje]
A target paraméter az a tartomány (egy vagy több cella), amely újonnan lett kiválasztva. A tartomány minden paraméterét vizsgálhatod az eseménykezelő makróban, sőt más cellák, tartományok, paraméterek függvényében alakíthatod a makró futását.
FONTOS: Ha cellák értékét változtatod vagy másik tartományt szeretnél Select v. Activate paranccsal elérni a makró közben, akkor az elején ki kell kapcsolnod az eseménykezelést az Application.EnableEvents=False sorral - a kilépés előtt pedig visszakapcsolni True paraméterrel.
Üdv. -
BigBadPlaYeR
senior tag
Mi a célja ennek a macro-nak? Mert ha csak annyi, hogy ne aludjon el a gép, akkor javaslom a Zhorn - Caffeine nevű programot.
"Furcsa, hogy az ember milyen keveset ér el, ha nem is próbálkozik."
Új hozzászólás Aktív témák
Állásajánlatok
Cég: Ozeki Kft.
Város: Debrecen
Cég: Promenade Publishing House Kft.
Város: Budapest