- Asszociációs játék. :)
- Airfryer XL XXL forrólevegős sütő gyakorlati tanácsok, ötletek, receptek
- Fűzzük össze a szavakat :)
- Mindent a StreamSharkról!
- Szólánc.
- Bambanő háza tája
- Nagy "hülyétkapokazapróktól" topik
- Euro Truck Simulator 2 & American Truck Simulator 1 (esetleg 2 majd, ha lesz) :)
- PLEX: multimédia az egész lakásban
- Ingyen kellene, de tegnapra
-
LOGOUT.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
-
-
imitro
csendes tag
Tudnátok segíteni egy banálisnak látszó feladatban?
Hogy tudok egy elkészített diagram területére néhány megjegyzést elhelyezni? (Pl. "Itt keződik a töltés", st.)
Előre is köszi!
-
kokopeti
csendes tag
válasz
Delila_1 #13244 üzenetére
Lenne egy kérdésem. Ha létrehoztam egy többoldalas Userformot, aminek az első oldalát nevezzük egy "Főoldalnak". Ezen az oldallal kapcsolatos leírás található illetve pár gomb amik a userformon található másik fülekre hivatkoznak, illetve a munkafüzetben található egyéb munkalapra.
A kérdésem mindössze annyi lenne, hogy mondjuk a CommandButton1-el hogyan tudnék hivatkozni a Userformon található második fülemre, amit akkor nevezzünk "Bevitelnek"?!
Köszönöm a segítséget!
-
kokopeti
csendes tag
válasz
Delila_1 #13243 üzenetére
Beviteli mezőm lesz majd több. Egy olyan űrlapot szeretnék csinálni, ami egy Autószerviz nyilvántartó programja lenne. Szóval tudnia kell a Műszakiztatás adatainak bevitelét, a Szervizelést, Alkatrész beszerzést/eladást, Egyéb költségek, kiadások, bevételek adatbevitelét, illetve ezek megjelenítését és adatbázisba mentését, illetve statisztika készítését. A legtöbb részt megcsinálni egyszerű még számomra is, de azért vannak benne buktatók a kevéske tudásom miatt.
Megpróbálom akkor a UserForm-ot is belefabrikálni, aztán jelentkezem újra. Köszönöm
-
Delila_1
veterán
válasz
kokopeti #13233 üzenetére
Hozz létre egy UserForm-ot, aminek a neve legyen pl. Bevitel. Tedd fel rá a beviteli mezőket, és a gombot, ami indítja az adatok tárolását.
A ThisWorkbook-hoz a
Private Sub Workbook_Open()
Sheets("Műszaki").Select
Bevitel.Show False
End Submakró kerüljön, ami a füzet behívásakor indítja a UserForm-ot.
A gombhoz ezt rendeld (gombon duplaklikk):
Private Sub CommandButton1_Click()
Dim WSA As Worksheet, hova As Long
Set WSA = Sheets("Adatok")
hova = WSA.Range("A65536").End(xlUp).Row + 1
WSA.Cells(hova, 1) = vevo_nev.Text
WSA.Cells(hova, 2) = vevo_cim.Text
WSA.Cells(hova, 3) = vevo_tel.Text
vevo_nev.Text = ""
vevo_cim.Text = ""
vevo_tel.Text = ""
End Sub[ Szerkesztve ]
-
poffsoft
veterán
válasz
kokopeti #13235 üzenetére
Az a textbox az tuti texbox, nem mondjuk editbox?
Sheets("Adatok").Cells(hova, 1).Value = DialogSheets("Műszaki").EditBoxes("datum_d").Text
vagy
Sheets("Adatok").Cells(hova, 1).Value = DialogSheets("Műszaki").TextBoxes("datum_d").Text
(#13236): az jó.
És melyik soron hasal el? (debug)
- amúgy, ha gyanús, hogy ez a rossz, debug idejére miért nem kommenteled ki?
ja, most nézem, nem range-t neveztél el, hanem objektet.
Akkor marad az előző verziók közül az egyik, és értelem szerint a datum_d helyére mehet a vevo_nev .... stb...Mondtam, sajna nem értek hozzá, de most rákerestem, editboxes lesz az
[ Szerkesztve ]
-
kokopeti
csendes tag
válasz
poffsoft #13234 üzenetére
A bemásolt makró vége már működött korábban olyan formában, hogy cella adatainak értékét másoltam át másik munkalap adott cellájába, illetve a nyomtatás is indult megfelelően...
Most az nem működik, hogy a beviteli mezőkbe írt szövegemet nem másolja át sehova és\vagy a beviteli mező értékét üresnek veszi miközben van bele írva. A datum= soromig minden rendben van, de ebben a sorban már nagyon beteg valami
Mindárt kipróbálom az általad írt sorral.
Az általad írt sem fut le :S, de az 100%-hogy az általam írt
datum = DialogSheets("Műszaki").TextBoxes.datum_d.Text.Value alapjaiban rossz szerintem.[ Szerkesztve ]
-
poffsoft
veterán
válasz
kokopeti #13233 üzenetére
Mondjuk én nem értek hozzá.
De :
változókat nem szoktuk definiálni a sub elején?
továbbá szerintem adatum = DialogSheets("Műszaki").TextBoxes.datum_d.Text.Value
.
.
.
Sheets("Adatok").Cells(hova, 1) = datumhelyett a
Sheets("Adatok").Cells(hova, 1).Value = DialogSheets("Műszaki").TextBoxes.datum_d.Text.Value
is megfelelne...
ja, meg ha a mezőket már elnevezted, miért nem névvel hivatkozol rájuk?
Sheets("Adatok").Cells(hova, 2).Value = Range("vevo_nev").ValueTörléshez is elég lenne csak a range value paraméterébe ""-t írni:
Range("vevo_nev").Value =""Amúgy mi nem működik rajta? mi a hiba?
[ Szerkesztve ]
-
kokopeti
csendes tag
Sziasztok!
Megpróbálom érthetően elmagyarázni, hogy miben kérném a segítségeteket...(remélem sikerül :-P)
Szóval:
Excel 2003-ban űrlapo(ka)t hoztam létre párbeszédpanelen, mely egy nyilvántartó programhoz használnék. Van egy "Műszaki" elnevezésű panelem, amiben beviteli mezők vannak. (Név,Cím,Telefon...stb) Ezeket a beviteli mezőket a következőképpen neveztem el: (vevo_nev, vevo_cim, vevo_tel). Az űrlap kitöltése után a beviteli mezőkbe írt szöveget, értéket az "Adatok" nevű Munkalapra kellene átmásolni adott cellákba. Pl.: Név = A1 cella Cím=B1 cella Telefonszám=C1. Ha az adatokat átmásolta\helyezte, akkor törölje ki a kitöltött adatokat a beviteli mezőkből.Már a 4. napja szenvedek vele, de nem jövök rá a megoldásra.
Indulásnak itt a makró amit elkezdtem, de nem tudom megoldani a működését :SSub munkalap_Kattintáskor()
Sheets("Adatok").Select
Range("A1").Select
Selection.CurrentRegion.Select
sor = Selection.Rows.Count
hova = sor + 1
datum = DialogSheets("Műszaki").TextBoxes.datum_d.Text.Value
nev = Sheets("Műszaki").Cells(3, 2).Value
cim = Sheets("Műszaki").Cells(4, 2).Value
telefon = Sheets("Műszaki").Cells(5, 2).Value
rendszam = Sheets("Műszaki").Cells(8, 2).Value
muszaki = Sheets("Műszaki").Cells(16, 2).Value
munka = Sheets("Műszaki").Cells(19, 2).Value
megrendelo = Sheets("Műszaki").Cells(2, 3).Value
auto = Sheets("Műszaki").Cells(10, 3).Value
potdij = Sheets("Műszaki").Cells(17, 3).Value
kedvezmeny = Sheets("Műszaki").Cells(21, 3).Value
Sheets("Adatok").Cells(hova, 1) = datum
Sheets("Adatok").Cells(hova, 2) = nev
Sheets("Adatok").Cells(hova, 3) = cim
Sheets("Adatok").Cells(hova, 4) = telefon
Sheets("Adatok").Cells(hova, 5) = rendszam
Sheets("Adatok").Cells(hova, 6) = munka
Sheets("Adatok").Cells(hova, 7) = muszaki
Sheets("Adatok").Cells(hova, 8) = megrendelo
Sheets("Adatok").Cells(hova, 9) = auto
Sheets("Adatok").Cells(hova, 10) = potdij
Sheets("Adatok").Cells(hova, 11) = kedvezmeny
Sheets("Munkalap_m").Select
dlgAnswer = Application.Dialogs(xlDialogPrint).Show
Sheets("Műszaki").Select
Range("B2").Select
ActiveCell.FormulaR1C1 = ""
Range("B3").Select
ActiveCell.FormulaR1C1 = ""
Range("B4").Select
ActiveCell.FormulaR1C1 = ""
Range("B5").Select
ActiveCell.FormulaR1C1 = ""
Range("B6").Select
ActiveCell.FormulaR1C1 = ""
Range("B7").Select
ActiveCell.FormulaR1C1 = ""
Range("B8").Select
ActiveCell.FormulaR1C1 = ""
Range("B9").Select
ActiveCell.FormulaR1C1 = ""
Range("B10").Select
ActiveCell.FormulaR1C1 = ""
Range("B11").Select
ActiveCell.FormulaR1C1 = ""
Range("B12").Select
ActiveCell.FormulaR1C1 = ""
Range("B13").Select
ActiveCell.FormulaR1C1 = ""
Range("B14").Select
ActiveCell.FormulaR1C1 = ""
Range("B15").Select
ActiveCell.FormulaR1C1 = ""
Range("B16").Select
ActiveCell.FormulaR1C1 = ""
Range("B17").Select
ActiveCell.FormulaR1C1 = ""
Range("B18").Select
ActiveCell.FormulaR1C1 = ""
Range("B20").Select
ActiveCell.FormulaR1C1 = ""
Range("B21").Select
ActiveCell.FormulaR1C1 = ""
Sheets("Főoldal").Select
End Sub -
cousin333
addikt
válasz
VásRló #13221 üzenetére
Szerintem így direktbe sehogy. Én a következőt csinálnám:
- A DÁTUM és IDŐ, valamint a KÖZÉP függvények segítségével meghatároznám az időt emészthető formában. A képlet, feltéve, hogy a kérdéses dátumod az A1-es cellában van:
=DÁTUM(KÖZÉP(A1;7;4);KÖZÉP(A1;4;2);KÖZÉP(A1;1;2))+IDŐ(KÖZÉP(A1;12;2);KÖZÉP(A1;15;2);0)
- Ezt beírnám a mellette lévő oszlop minden sorába, ahol ilyen dátum szerepel
Ez így már sorbarendezhető. Ha mindenképpen az eredeti felállás kell, akkor:
- Fognám ezt az új oszlopot, és másolás, irányított beillesztéssel (csak az értéket) bemásolnám az eredeti dátumoszlopba.
- Majd kijelölve ezt a régi-új oszlopot, a cellaformázásnál egyéni formátumot adnék meg a következő formátumkóddal:
nn.hh.éééé óó:pp
Ekkor elvileg ugyanúgy fog kinézni az eredeti és az új oszlop, de már sorba is lehet rendezni. Tesztelve, nálam működött (Excel 2010).
[ Szerkesztve ]
-
válasz
aisten #13224 üzenetére
Nem tudom milyen verziót használsz ez most a 2010-esben így lehet
1. kijelölöd a másolandó tartományt (az egészet a rejtettekkel együtt)
2. kezdőlap fül/szerkesztés csoport/keresés és kijelölés lenyíló/ugrás
3. irányított gombon katt/csak a látható cellák kijelöl és ok
4. Másol/irányított beillszetés/Képlet bejelöl OK[ Szerkesztve ]
-
Delila_1
veterán
válasz
#74459392 #13229 üzenetére
Ha az A1 cellában van a 4 tizedesed, akkor egy üres oszlopba beírod a képletet. A képlet első paramétere a cellahivatkozás (A1 a példában), a második paraméter adja meg, hogy hány tizedesig akarod kerekíteni a számot.
Lemásolod a képletet, ameddig az adataid tartanak. Vagy az új oszlopot használod ezután, vagy kijelölöd, másolod (Ctrl+c), ráállsz az első 4 jegyű cellára, jobb klikk, Irányított beillesztés, Érték. Ezzel a művelettel az eredeti oszlopodat felülírod az új, 2 tizedest tartalmazó számokkal, a segédoszlopot törölheted.
Vigyázat! Ha az utóbbi módszert alkalmazod, és az eredeti oszlopban képletek voltak, a képletek helyére fix számok kerülnek.
Azt is megteheted, hogy ha képlet hozta létre a 4 tizedest, a teljes képletet kerekíted eleve.
=KEREKÍTÉS(képlet(...);2) -
#74459392
törölt tag
Sziasztok!
Van egy 4 tizedesjegyű számom és utána a cellaformátumnál beállítom 2 tizedesjegyre. Amikor ezzel a 2 tizedesjegyű számmal dolgozok tovább, a program ugyan csak 2 tizedesjegyet mutat, de az eredeti 4-el számol. Hogyan lehetne azt megoldani, hogy a 4 tizedesjegyű számot 2 tizedesre alakítsa és utána azzal is számoljon tovább?
-
aisten
csendes tag
és az még hozzá tartozik, hogy képletbe szeretném másolni a számokat.
-
aisten
csendes tag
Sziasztok!
Lehet alap kérdést teszek fel:
Egyik fül oszlopát szeretném átmásolni a másik fülbe, de sorba (irányított beillesztés, transzformáció, eddig megvan) de, az oszlopból csak minden 5. cella kellene, a többi el van rejtve, de másolásnál azokat is továbbviszi. Be lehet valahol állítani, hogy a elrejtet cellákat ne másolja?
köszi
-
Delila_1
veterán
válasz
plaschil #13220 üzenetére
A makró az N oszlopba kigyűjti az A oszlopban lévő szövegeket, és mindegyik mellé beírja csökkenő sorrendben a hozzá tartozó top5-öt az O:S oszlopba.
Ha 100-nál több féle adatod lehet az A oszlopban, a makróban jelzett sorban írhatod át.Sub Top5()
Dim sor As Long, sor1 As Long
Dim usor As Long, usor1, cim, ertek
Dim T(100, 5) '***** Itt írd át a 100-at *****
Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual
usor = ActiveSheet.UsedRange.Rows.Count
Columns("A:A").Select
Range("A1:A" & usor).AdvancedFilter Action:=xlFilterCopy, CopyToRange:=Range( _
"N1"), Unique:=True
usor1 = Range("N1").End(xlDown).Row
For sor1 = 2 To usor1
cim = Cells(sor1, 14)
For sor = 2 To usor
ertek = Cells(sor, 2)
If Cells(sor, 1) = cim Then
If ertek > T(sor1 - 1, 1) Then
T(sor1 - 1, 5) = T(sor1 - 1, 4)
T(sor1 - 1, 4) = T(sor1 - 1, 3)
T(sor1 - 1, 3) = T(sor1 - 1, 2)
T(sor1 - 1, 2) = T(sor1 - 1, 1)
T(sor1 - 1, 1) = ertek
GoTo Köv
End If
If ertek > T(sor1 - 1, 2) Then
T(sor1 - 1, 5) = T(sor1 - 1, 4)
T(sor1 - 1, 4) = T(sor1 - 1, 3)
T(sor1 - 1, 3) = T(sor1 - 1, 2)
T(sor1 - 1, 2) = ertek
GoTo Köv
End If
If ertek > T(sor1 - 1, 3) Then
T(sor1 - 1, 5) = T(sor1 - 1, 4)
T(sor1 - 1, 4) = T(sor1 - 1, 3)
T(sor1 - 1, 3) = T(sor1 - 1, 2)
T(sor1 - 1, 3) = ertek
GoTo Köv
End If
If ertek > T(sor1 - 1, 4) Then
T(sor1 - 1, 5) = T(sor1 - 1, 4)
T(sor1 - 1, 4) = T(sor1 - 1, 3)
T(sor1 - 1, 4) = ertek
GoTo Köv
End If
If ertek > T(sor1 - 1, 5) Then T(sor1 - 1, 5) = ertek
End If
Köv:
Next
Range("O" & sor1) = T(sor1 - 1, 1)
Range("P" & sor1) = T(sor1 - 1, 2)
Range("Q" & sor1) = T(sor1 - 1, 3)
Range("R" & sor1) = T(sor1 - 1, 4)
Range("S" & sor1) = T(sor1 - 1, 5)
Next
Application.Calculation = xlCalculationAutomatic
Application.ScreenUpdating = True
End Sub -
VásRló
tag
Egy gyors kérdésem van. Adott egy excel oszlop, benne dátumok, időpontok.
pl. 01.11.2011 08:17
és a 2. tag a hónap, tehát a 11.
Az első tag a nap.A kérdésem, hogy tudnám időrendi sorrendbe rendezni ezt? Mert az excel az elejével kezdi, azzal kezdi növekvő sorrendbe rakni.. de igazából a 2011-gyel kellene kezdeni, utána a középső résszel, utána a bal oldallal, és utána jöhetne az óra perc..
-
plaschil
aktív tag
Hello!
Maximum-keresésre valaki írt már makrót? Valami olyasmire lenne szükségem, hogy mondjuk a top5-öt (5 legnagyobbat) szedje ki nekem.
pl van 2 oszlopom, egyikben stringek, másikban számok:
a 1
a 1
a 2
b 2
b 3
b 4És akkor az "a"-k közül a top5, "b"-k közül a top5 stb...
-
kutga
nagyúr
Sziasztok!
Excel 2003-ban adott egy hosszú lista, cégnevekkel egy oszlopban egymás alatt, van amelyik többször is előfordul.
Szeretnék egy külön munkalapra egy olyan szűrést csinálni ami minden listában szereplő nevet csak egyszer tartalmaz, lehetőleg ABC sorrendben.
Mi lenne a legegyszerűbb módszer?
-
Delila_1
veterán
válasz
Solar_Wind #13211 üzenetére
Szívesen.
-
bugizozi
őstag
válasz
tzsolesz #13206 üzenetére
Egy segédoszlop segítségével megoldható
-
tzsolesz
nagyúr
Nos, végül is így humánusabban néz ki a dátum. Bár azt már sajnos nem tudom elérni, hogy 1900.01.01 formába álljon.
750 tételt pedig már nem javítok.[ Szerkesztve ]
-
tzsolesz
nagyúr
Üdv srácok.
Lenne egy nagy problémám.
Van egy nagy kimutatásom, ahová a születési dátumokat kellett gyorsan egy állományról beírnom. De mivel gyorsan kellett, így csak elég kusza formában sikerült ezt megvalósítanom.
Nah már most szeretném ha ez a dátum a következő formában jelenne meg: 1900.01.01
Most így néz ki. [link]
Milyen képlettel lehetne rendbe tenni?
Új hozzászólás Aktív témák
- Fejhallgató erősítő és DAC topik
- eBay
- PlayStation 5
- Ukrajnai háború
- Házimozi belépő szinten
- Új design és okosabb AI: megjött a Galaxy S25 készülékcsalád
- PROHARDVER! feedback: bugok, problémák, ötletek
- AMD Ryzen 9 / 7 / 5 9***(X) "Zen 5" (AM5)
- Digitális Állampolgárság Program DÁP
- Xbox Series X|S
- További aktív témák...