-
Fototrend
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
-
Fferi50
őstag
válasz the radish #28750 üzenetére
Szia!
Workbooks.Open Filename:= "C:\A.xls"
Range(cells(2,2),cells(2,2).End(xlDown)).Copy destination:=Workbooks("B.xls").Sheets("munka1"). Range("A2")Üdv.
-
the radish
senior tag
Adott egy elég hosszú makró, aminek a közepén, ha munka1 A1 = 1 le kéne futnia Szatocs1981 által közzétett makrónak:
Dim Zelle As Range
For Each Zelle In Selection.Cells
Zelle.NumberFormat = "@"
Zelle.Value = Replace(Zelle.Value, ",", ".")
Next ZelleEzzel semmi probléma nem is lenne, "THEN" kóddal meg is oldanám, de nem ilyen egyszerű.
A makrónak folytatódnia kell, akár így, akár úgy de ugye ez középen van, tehát nem kéne kilépnie ha a feltétel nem teljesül, viszont a fenti kódnak csak a feltétel teljesülése esetén kéne lefutnia.
A "Case" kapcsoló megint nem lenne jó, mert akkor két makrót kéne fenntartani, ráadásul - amint írtam - a makró közepén lenne az elágazás.Lehet, hogy nagyon egyszerű, de nem jövök rá.
Előre is köszönöm.
[ Szerkesztve ]
-
poffsoft
addikt
-
poffsoft
addikt
válasz the radish #28753 üzenetére
miért lépne ki?
az if then lefuttatja a cserét, és megy tovább a makród.if worksheet("munka1").range("A1")=1 then
Dim Zelle As Range
For Each Zelle In Selection.Cells
Zelle.NumberFormat = "@"
Zelle.Value = Replace(Zelle.Value, ",", ".")
Next Zelle
ELSE
blabla2
blabla2
END IF?
vagy nem értelek.[ Szerkesztve ]
[ Szerkesztve ]
-
Rota
tag
.
[ Szerkesztve ]
-
air
nagyúr
Sziasztok!
Először is köszi a segítséget a múltkori problémámban.
Most lehet, hogy picit nehezebbet kérdezek.
Próbált már valaki Excelben műszakbeosztás varázslót csinálni?
Vagy erre inkább Access-t javasolnátok?Tintatartó, aligátor, búzavirág, csók, gyalupad, fogpiszkáló
-
spe88
senior tag
Hello,
Olyat, hogy tudok csinálni, hogy egy adott tartományban színezze be a cellát, ha egy másik cella teljes elemét megtalálja benne
Pl.:
A oszlop
asdfalmagfdg
vxcvkörtenvbn
cyxvbarackwerwe
bnvbnvbalmayxcvyxv
agdfagananászvccxvB oszlop
alma
körte
barackszóval ezeket színezné ki:
asdfalmagfdg
vxcvkörtenvbn
cyxvbarackwerwe
bnvbnvbalmayxcvyxvköszi
Spóroljunk! Kerül, amibe kerül!
-
ueva
csendes tag
Sziasztok!
Segítséget szeretnék kérni a következő problémára.
Adott egy oszlop, amelyben pl. magasságokat tárolunk csökkenő sorrendben.
Fel kell osztani gondolatban a magasságokat 10 m-es sávok szerint. A „legfelső” sávba tartozzon minden, legalább 2650 m-es magasság, a következőbe az ezeknél kisebb, de legalább 2640 méteresek, az az utáni csoportba kerüljön minden eddig nem szerepelt, de legalább 2630 m-es magasság és így tovább!
Segédcellák nélkül meg kellene adni, hogy hány magasság esik az egyes sávokba! (Ezek szerint a GYAKORISÁG függvény nem alkalmazható!?)Köszönöm előre is!
[ Szerkesztve ]
-
the radish
senior tag
Az alábbi kijelölés hogy lenne helyesen?
Dim tol$
tol$ = Range("BH2")
Dim ig$
ig$ = Range("BI2")
Range("A" tol$:"B" ig$).SelectAz "ig" tulajdonképpen a BI oszlopban található legnagyobb érték, =MAX(BI:BI)
[ Szerkesztve ]
-
Fferi50
őstag
Szia!
Ha a képen levő értékek számok (azaz cellaformázással van a " m" hozzáadva), akkor a GYAKORISÁG függvénynek működnie kell (Ha F2 után, illetve a szerkesztősorban csak a szám jelenik meg).
A "titok", hogy poffsoft képletét tömbképletként kell megadni annyi sort kijelölve, ahány gyakorisági osztályt tartalmaz a második paraméter, jelen esetben 4 sort, ha bővíted az osztályok számát akkor annak megfelelő sort kell kijelölnöd a cél oszlopban.Ha viszont a 2655 m érték szövegként van beírva (azaz 2655 m a cella értéke, ha F2-t nyomsz rá), akkor nem használható a gyakoriság függvény, mert nem számként értelmezi.
Egyébként mit jelent a sajna nem működik? 0 értéket ír ki vagy hibát, ha hibát akkor melyiket? Adj több információt, hogy segíthessünk.
Üdv.
-
the radish
senior tag
Sziasztok!
Tegnap esti problémámat egy kis utánajárást követően megoldottam.
Most az alábbit szeretném kivitelezni:
Egy makró behív egy file-t. Ha az nem található, akkor az alábbi üzenet fogad:Meg lehet azt oldani, hogy ha nem találja az adott file-t, akkor egy felugró msg box fogadjon a VB ablaka helyett?
Előre is köszönöm.
-
szatocs1981
aktív tag
válasz the radish #28769 üzenetére
Ez segít a továbbiakban?
If Dir("C:\amitakarsz.txt") <> "" Then
MsgBox "File létezik!"
Else
MsgBox "File nem létezik!"
End If -
rgqjx
aktív tag
-
the radish
senior tag
válasz szatocs1981 #28770 üzenetére
Köszönöm!
-
ueva
csendes tag
válasz Fferi50 #28768 üzenetére
Szia!
A táblázat értékei számok, a m csak formázással van mögé téve.
Igen tömbképletként alkalmaztam a GYAKORISÁGOT, de teljesen hibás értékek jöttek ki. Erre írtam, hogy sajna nem működik.
Aztán rájöttem, hogy a csoporttömb értékeinek nem a leírásban szereplő 2650, 2640, 2630..... értékeket kell megadnom, hanem 10-zel felfelé tolva 2660, 2650, 2640.....
Így már jobb az eredmény. Csak az a gond, hogy a kerek értékeket nem a jó csoportba számolja, hanem az alatta lévőbe.
Lehet, hogy mégsem jól adtam meg a csoporttömb értékeit? -
ueva
csendes tag
válasz Fferi50 #28774 üzenetére
Köszönöm a segítséget neked és poffsoft-nak is!!!
Még egy kérdésem lenne. A különböző sávba eső értékeket feltételes formázással váltott színnel (egyik sávba eső értékek kék háttérrel, következő sávba esők fehér háttérrel) jelenjenek meg.
A képen kézzel csináltam, és elvileg ezt is segédcellák nélkül kellene.
Talán valamiféle maradékos osztásos képlettel meg lehetne oldani?[ Szerkesztve ]
-
m.zmrzlina
senior tag
Hogyan tudom beállítani az AutoFit tulajdonságot egy cellára?
Nem a sor/oszlop azonosítók közti duplakattra gondolok, hanem hogy automatikusan történjen az AutoFit ha szükség van rá. Régen volt ilyen egy munkalapomon de nem tudom hogyan lehet beállítani.
[ Szerkesztve ]
-
szatocs1981
aktív tag
válasz m.zmrzlina #28776 üzenetére
Néha egyszerübb (és gyorsabb) lenne a googliban keresgélni....
-
the radish
senior tag
válasz Fferi50 #28774 üzenetére
Jaj bocsánat, nem válasznak szántam.
Egy ismeretlen hibába ütköztem.
Egy változó alapján megy végbe a szűrés:
Sheets("m1").Select
kr10 = Sheets("m2").Range("IV1")
Range("A:A").Select
Selection.AutoFilter
Selection.AutoFilter Field:=1, Criteria1:= _
"=" & kr10
Range("A1:F20000").SelectSemmi gond nincs, de ha a változó 10, vagy nagyobb érték, nem működik. Mi lehet a gond?
[ Szerkesztve ]
-
the radish
senior tag
-
poffsoft
addikt
ez feltételes formázás lesz, elvileg cellaérték alapján, de képlettel is megoldható.
minden osztálynak más színt kell adni?
mert a gyakoriság leírása szerint: az osztály felső, alsó határával (HF, HA ) kifejezve x-et:
HF1> x >=HA1
HF2=HA1> x >=HA2
vagyis:
1. osztály: ]HF1 - HA1]; [HF2 - HA2];ezt én annyi feltételes formázással tudom megadni, ahány osztályod van.
Kijelölöd az adattartományt, és egyesével hozzáadod ezeket a feltételeket a formázáshoz:
1.) =ÉS(A2<1000000;A2>=2300)
2.) =ÉS(A2<2300;A2>=2290)
3.) =ÉS(A2<2290;A2>=2280)
...[ Szerkesztve ]
-
kopi.dll
tag
Sziasztok.
Lenne egy megoldandó problémám,amiben a segítségeteket szeretném kérni.
Adott egy hexadecimális szám egy cellában pl.:"01 E6 AB" majd ezt szeretném összeadni (01+E6+AB), és egy cellában megkapni az eredményt.
Tudna ebben segíteni nekem vki.?
Köszönöm előre is.
kopi.dll
-
the radish
senior tag
Függőleges tartományban az alábbi számok vannak (max 999, min -99):
230
-67
98
-98
11
Szükségem lenne arra, hogy minden szám maximum 3 karakter hosszúságú legyen:
230
-67
098
-98
011
stb
SZÖVEG függvénnyel próbálkozom, de nem jön össze. -
m.zmrzlina
senior tag
válasz the radish #28782 üzenetére
Próbáld a következő egyéni formátumkóddal:
000;-00
-
-
the radish
senior tag
válasz m.zmrzlina #28784 üzenetére
Ezzel összejött, köszönöm!
-
m.zmrzlina
senior tag
válasz the radish #28786 üzenetére
Szivesen.
-
ueva
csendes tag
válasz poffsoft #28780 üzenetére
Szia!
Mégsem működik!
Az én hibám félreértelmeztem a feladatot.
A feltételes formázást 2 színnel kell csak elvégezni. A legnagyobb érték fehér hátterű legyen a többi sávba tartozó pedig ennek megfelelően kék/fehér felváltva.
A sávok: 2659-2650i, 2649-2640, 2639-2630,.....,2509-2500.
Ezt úgy oldottam meg, hogy a feltételes formázáshoz a következő két szabályt írtam:
=MARADÉK(KEREK.LE($A2/10;0);2)=1 --> FEHÉR HÁTTÉR
=MARADÉK(KEREK.LE($A2/10;0);2)=0 -->KÉK HÁTTÉRAztán utána néztem, hogy abban az esetben, ha valamelyik értéken módosítok, akkor attól függően a formázásnak is követnie kell.
pl: Ha a 4. értéket a 2634-et 2640-re módosítom, akkor mivel 3 érték esik a 2640-es sávba mindhárom kék színű viszont az utána következő sávnak már fehérnek kell lenni.
Ilyennek kéne lenni:
Nekem viszont nem az, mivel a képletem szerint 10-zel osztva az is páros.
Az enyém így néz ki:Hogy lehetne úgy megadni a formázás szabályát, hogy helyesen működjön?
Nagyon köszönöm!
Üdv. -
poffsoft
addikt
Eléggé zavaros.
Nem tudom, miért osztással próbálkozol, ha a feladat az osztályképzéssel indult, valószínű a formázásnál is az osztályokat kellene használni.feltételes formázással add meg ugyanígy:
fehér háttér:
=VAGY((A2>=2650);ÉS(A2<2639;A2>=2630);ÉS(A2<2619;A2>=2610);ÉS(A2<2599;A2>=2590);ÉS(A2<2579;A2>=2570);ÉS(A2<2559;A2>=2550);ÉS(A2<2539;A2>=2530);ÉS(A2<2519;A2>=2510))
kék háttér:
=VAGY(ÉS(A2<2649;A2>=2640);ÉS(A2<2629;A2>=2620);ÉS(A2<2609;A2>=2600);ÉS(A2<2589;A2>=2580);ÉS(A2<2569;A2>=2560);ÉS(A2<2549;A2>=2540);ÉS(A2<2529;A2>=2520);(A2<2509))nem nagyon értem, mi a feladat...
a leírásod szerint mégsem az osztályok szerint kell színezned (azért kék a következő is, mert a köztük lévő osztály gyakorisága 0 (nincs ilyen adat).
most akkor pontosan mi is a feladat?
segédoszlopok nélkül?
ha egy osztályköz üres, azt ne vegye figyelembe a feltételes formázás?
ez szép feladat, most nem is vállalnám be...[ Szerkesztve ]
[ Szerkesztve ]
-
ueva
csendes tag
válasz poffsoft #28794 üzenetére
Szia!
Bocs, hogy ilyen zavarosan adom elő, de először én is félreértelmeztem a problémát.
Megpróbálom kevésbé zavarosan leírni.
Szóval:
Van néhány magasság adatom, amelyeket gondolatban 10 m-es sávokra fel kell osztani, majd megadni, hogy az egyes sávokba hány adat tartozik. Ehhez kellet a GYAKORISÁG.(A színezést itt csak manuálisan végeztem)Aztán jött az új kihívás, hogy ezeket a sávokat ki kell emelni úgy, hogy az azonos sávba tartozó magasságok azonos háttérrel, a különböző sávokba tartozó, viszont a táblázatban „szomszédos” magasságok adatai eltérő háttérszínnel jelenjenek meg! Első sáv adatai fehér, következő kék...stb. Csak arra nem figyeltem, hogy a színezés automatikusan reagáljon minden (a magasságok eredeti, monoton csökkenő rendezettségét megtartó) adatváltozásra! Tehát, ha pl. a 2634 m-es magasságot átírom 2640 m-re, akkor így már az a 40-es sávba fog tartozni, tehát kék színű. A 30-as sáv gyakorisága 0, a 20-as sávnak így fehérnek kell lennie.
Valahogy így:
De, ha a feltételes formázásban lefixálom, hogy melyik sáv milyen színű legyen, akkor nem fogja követni a változásokat.
Most egy kicsit érthetőbb voltam?
Nagyon köszi a segítséget előre is!
Üdv -
spe88
senior tag
Olyat, hogy tudok, hogy feltételes formázásnál a képletbe az legyen, hogy az adott szám egyenlő 0-val és a .Pattern = xlGray25 szerint van bepontozva, akkor rakja a cellát pirosra!
Igazából ez a .Pattern = xlGray25 az amit nem tudom, hogy tudnék egy képeltbe beilleszteni!
Köszi
Spóroljunk! Kerül, amibe kerül!
-
the radish
senior tag
Sziasztok!
Msgbox kód kéne, amin van egy Ok és egy Mégse.
Az Ok lenne az alapértelmezett és 10 sec múlva aktivizálódna is, ráadásul az sem ártana, ha a hátralévő idő ez az OK felirat mellett (előtt) zárójelben látszódna.Van erre megoldás?
Előre is köszönöm.
-
Fferi50
őstag
válasz the radish #28797 üzenetére
Szia!
Szerintem ez saját alkotású UserForm-mal oldható meg. Egy cimke az üzenettel, két parancsgomb + egy cimke a timernek.
Amikor megmutatod a formot, beállítod az üzenetet és a timert - megjelenítés userform.show false paraméterrel, hogy a program fusson tovább, de a programba beteszed a 10 mp várakozási időt is (Application.Wait) a megjelenítő sor után - ha lejárt az idő, végrehajtod a műveletet és eltünteted a formot.
Ha Mégse gombot nyomnak, akkor is el kell tüntetned a formot, mielőtt tovább mész.Üdv.
[ Szerkesztve ]
-
the radish
senior tag
válasz Fferi50 #28798 üzenetére
Köszi, de az aktiválást úgy gondoltam, hogy le is nyomódik az ok gomb.
Most ezzel kísérletezek, de az a baj, hogy ugyan lenyomódik a kijelölt gomb, de nem tudok semmi mást csinálni amíg tart az idő, konkrétan még klikkelni sem tudok egyik gombra sem.
Sub vagy()
UserForm11.Show
Application.Wait Time + TimeSerial(0, 0, 10)
UserForm1.CommandButton1 = True
UserForm1.CommandButton1 = vbClick
End SubAzaz valahogy jó lenne a visszaszámolás, de ugyanakkor aktívnak kéne maradnia a gomboknak, ha meg akarom pl. szakítani a mégsem gombbal.
-
Fferi50
őstag
válasz the radish #28799 üzenetére
Szia!
A userformnak van egy modal paramétere, ami
vagy 1 (ha nem adod meg, ez a default), ebben az esetben addig nem megy tovább a program, amíg a form látszik
vagy 0 ill. False lehet, ezt mindig meg kell adni. Ilyenkor a form nem állítja meg a program futását. Ezért is írtam, hogy a False paramétert is állítsd be a show meghívásakor.Az application.wait valóban megállítja a program futását, bocs erre nem voltam figyelemmel, más módon kell a 10 mp - visszaszámlálást megoldani.
Még agyalok rajta egy kicsit, lehet az időzítő funkciót kell használni.Üdv.
Új hozzászólás Aktív témák
- Milyen NAS-t vegyek?
- Milyen monitort vegyek?
- HP ProLiant MicroServer Gen8
- Helldivers 2 (PC, PS5)
- Milyen TV-t vegyek?
- Gördeszka topic
- Az NVIDIA szerint a partnereik prémium AI PC-ket kínálnak
- Telekom otthoni szolgáltatások (TV, internet, telefon)
- Xbox Series X|S
- Anglia - élmények, tapasztalatok
- További aktív témák...
- Canva Pro előfizetés - 1 éves
- AKCIÓ! - STEAM kulcsok /Anuchard, Aragami, Children of Morta, stb. - 2024.04.17.
- Vírusirtó, Antivirus VPN kulcsok
- Microsoft licencek KIVÉTELES ÁRON AZONNAL - UTALÁSSAL IS AUTOMATIKUS KÉZBESÍTÉS - Windows és Office
- Warhammer Online - Age of Reckoning (DE) Collectors Box (Figurával!)