Hirdetés
- Luck Dragon: Asszociációs játék. :)
- sziku69: Fűzzük össze a szavakat :)
- sziku69: Szólánc.
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- ricsi99: 6. Genes alaplap tündöklése kontra MS/Zintel korlátozásai
- f(x)=exp(x): A laposföld elmebaj: Vissza a jövőbe!
- Luck Dragon: MárkaLánc
- talmida: My Art II.
- btz: Internet fejlesztés országosan!
- hcl: Olympus E-PL1 nyomozás
-
LOGOUT
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
-
Mutt
senior tag
-
Pakliman
tag
Szia!
Az egy nagyon-nagyon fa, amibe a fejszédet akarod vágni...

Megoldható a dolog, csak sokat kell olvasni, tanulni ésszentségyakorolni
Javaslom áttanulmányozni ezt és ezt. A utóbbival találkoztam hamarabb, abból tanultam meg néhány olyan dolgot, amire nekem szükségem volt. A látszat ellenére egyértelmű, hogy mi mit csinál. Ne ijedj meg tőle
-
Fferi50
Topikgazda
Szia!
Valószínűleg azért, mert azok nem valódi dátumok, hanem dátumnak látszó szövegek.
Egy segédoszlopban alakítsd át az értékeket dátummá pl. a következő képlettel:=DÁTUM(JOBB(A1;4);KÖZÉP(A1;4;2);BAL(A1;2))
Ezután ezt az oszlopot alakítsd át értékké (másolás - irányított beillesztés érték), majd erre már rendezhetsz - illetve átmásolhatod az eredeti adatokra.
Üdv. -
Fferi50
Topikgazda
Szia!
Makróval szép sorban megnyitod mindegyiket, törlöd a munkalapot, majd beszúrod az újat. Ha ugyanoda kell beszúrni, akkor megjegyzed a törölt munkalap helyét és annak a helyére szúrod be - vagy először beszúrod elé az újat és utána törlöd a régit. Ezután mented és bezárod a fájt és nyitod a következőt.
Makrórögzítővel megcsinálsz egy ilyen műveletet, majd ciklussal végrehajtod a fájlokra.
A fájlneveket beteheted pl. egy munkalapra és az alapján mész végig, vagy használhatod a Dir() parancsot a fájlok megtalálására.
Üdv. -
ny.janos
tag
Szia!
Kihasználhatod a dátum azon tulajdonságát, hogy azt az excel valójában egy számként kezeli úgy, hogy az 1 szám jelenti 1900.01.01-jét, onnantól minden egyes nappal növekszik ez az érték. Mivel 2019.12.16-e a sorban a 43814. dátum, így alkalmazhatod A1-ben a következő képletet:
=10+(MA()-43815)*2,5 -
Delila_1
veterán
Megpróbáltam újra, de valamiért úúútálja.
Itt vannak a makrók a Gomb 1, gomb 2, stb-hez rendelve.Sub Gomb1_Click()TorlesActiveSheet.Shapes("Gomb 6").Visible = TrueEnd SubSub Gomb2_Click()TorlesActiveSheet.Shapes("Gomb 7").Visible = TrueEnd SubSub Gomb3_Click()TorlesActiveSheet.Shapes("Gomb 8").Visible = TrueEnd SubSub Gomb4_Click()TorlesActiveSheet.Shapes("Gomb 9").Visible = TrueEnd SubSub Gomb5_Click()TorlesActiveSheet.Shapes("Gomb 10").Visible = TrueEnd SubSub Torles()ActiveSheet.Shapes.Range(Array("Button 6", "Button 7", "Button 8", "Button 9", "Button 10")).Visible = FalseEnd Sub
-
Delila_1
veterán
Egyszerűbb lenne, ha telepítenéd a naptár vezérlőt, de itt egy ellenőrző makró. A (végül) bevitt dátumot az A1 cellába írja be.
Sub Dat_ellenorzes()
Dim kelt As String
kelt = Application.InputBox("Add meg dátumot", "Dátum bekérése", , , , , , 2)
'Ellenőrzés
'Teljes hossz
If Len(kelt) <> 10 Then GoTo Hiba
'Pontok helye
If Mid(kelt, 3, 1) <> "." Then GoTo Hiba 'nap
If Mid(kelt, 6, 1) <> "." Then GoTo Hiba 'hónap
'Szám-e
If Not IsNumeric(Left(kelt, 2)) Then GoTo Hiba 'nap
If Not IsNumeric(Mid(kelt, 4, 2)) Then GoTo Hiba 'hónap
If Not IsNumeric(Right(kelt, 4)) Then GoTo Hiba 'év
'Számok helyessége
If Left(kelt, 2) > "31" Then GoTo Hiba 'nap
If Mid(kelt, 4, 2) > "12" Then GoTo Hiba 'hónap
Select Case Mid(kelt, 4, 2) 'hónap
Case "02" 'február
If Right(kelt, 4) / 4 <> Int(Right(kelt, 4) / 4) And Left(kelt, 2) > 28 Then GoTo Hiba
Case "04", "06", "09", "11" '30 napos hónapok
If Left(kelt, 2) > 30 Then GoTo Hiba
End Select
If Right(kelt, 4) / 4 = Int(Right(kelt, 4) / 4) And Mid(kelt, 4, 2) = "02" _
And Left(kelt, 2) > 29 Then GoTo Hiba 'szökőév február
Range("A1") = CDate(kelt)
Exit Sub
Hiba:
Dat_ellenorzes
End Sub -
Pakliman
tag
Szia!
Az utolsó használt cella egy adott oszlopban:
Worksheets("Munkalap_Neve").Cells(Worksheets("Munkalap_Neve").Cells.Rows.Count, oszlop_száma).End(xlUp).Row
(AWorksheets("Munkalap_Neve").elhagyható, ha nem egy konkrét munkalapon, hanem az éppen aktívon akarod futtatni a makrót.)
pl.:Sub x()
Dim us As Long
Dim o As Long
o = 1
us = Cells(Cells.Rows.Count, o).End(xlUp).Row
Cells(us + 1, o) = Application.Sum(Range(Cells(2, o), Cells(us, o)))
End SubKellemes további kísérletezést

-
-
Fferi50
Topikgazda
Szia!
"nem csak akkor fut le, amikor meghívom, hanem akkor is, amikor a főprogram véget ér, és jön ez a bizonyos SUB alprogramnév.... END SUB rész."
Ez egyszerűen nem így működik. Egy makró csak akkor fut le, ha meghívod. Attól, hogy egymás után vannak írva, még nem fog ráfutni!
Üdv.
-
Delila_1
veterán
Az alprogramban akarsz utasításokat adni a főprogram ciklusán belül, valószínűleg a főprogram i vagy n változójának pillanatnyi értékével. Ha igen, akkor át kell adnod ezt az értéket a meghíváskor.
alprogramnev i
Az alprogramnak pedig fogadnia kell
Sub alprogramnev(i)
...
End Sub -
Pakliman
tag
Sajnos már 2016-ost használok, nem emlékszem a pontos elérésre
, de kb.:
Keresd meg a beállításokban az Adatvédelmi központot, ott a makróbeállításokat.
Pötty -> Az összes makró engedélyezése...,
Pipa -> A VBA-projekt objektum...
Indítsd újra az Excelt.
A VBA IDE az Alt-F11 lenyomásával indítható. -
Pakliman
tag
Szia!
Neked valami ilyesmi kell:
Public Sub Rendez()
Dim i As Long
With ActiveWorkbook
For i = 1 To 6
'Feltételezzük, hogy a FŐ munkalap neve: FML
.Worksheets("FML").Copy After:=.Worksheets(.Worksheets.Count)
With .Worksheets(.Worksheets.Count)
.Name = "Rend_" & i
.Cells.Sort Key1:=.Columns(i), Header:=xlYes
End With
Next i
End With
End SubTedd be egy mindig elérhető munkafüzetbe (Összefoglaló->personal füzet) és rendelj hozzá egy billentyű kombinációt.
-
Új hozzászólás Aktív témák
Hirdetés
- Debrecen és környéke adok-veszek-beszélgetek
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- Crimson Desert
- Samsung kuponkunyeráló
- Filmvilág
- TCL LCD és LED TV-k
- ThinkPad (NEM IdeaPad)
- Xiaomi 15T Pro - a téma nincs lezárva
- Automata kávégépek
- Motorola Moto G06 Power – nagyfater új zakót vett
- További aktív témák...
- HP. Laptop. i5. Model: 15-da1002nq
- Vírusirtó, Antivirus, VPN kulcsok GARANCIÁVAL!
- Kaspersky, BitDefender, Avast és egyéb vírusírtó licencek a legolcsóbban, egyenesen a gyártóktól!
- Bitdefender Total Security 3év/3eszköz! - Tökéletes védelem.
- MEGA AKCIÓ! - Jogtiszta Windows - Office & Autodesk & CorelDRAW - Azonnal - Számlával - Garanciával
- Apple iMac 27" 5K 2015 Late / 16GB DDR3 / 512 GB SSD / Bill+Egér 6 hó garancia, számlával!
- iPhone 13 Pro 256GB Sierra Blue -1 ÉV GARANCIA - Kártyafüggetlen, MS4598, 100% Akkumulátor
- Dell Core i5 - i7 - 8-10-11-12. gen. üzleti kategóriás notebookok számlával
- BESZÁMÍTÁS! ASUS B550M R7 5700 32GB DDR4 512GB SSD RTX 3070 Ti 8GB Lian Li Vector V100R Corsair 650W
- Keresünk S24/S24+/24 Ultra/S24 FE
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest






, de kb.:

Fferi50