Hirdetés
Talpon vagyunk, köszönjük a sok biztatást! Ha segíteni szeretnél, boldogan ajánljuk Előfizetéseinket!
-
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
-
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()
Torles
ActiveSheet.Shapes("Gomb 6").Visible = True
End Sub
Sub Gomb2_Click()
Torles
ActiveSheet.Shapes("Gomb 7").Visible = True
End Sub
Sub Gomb3_Click()
Torles
ActiveSheet.Shapes("Gomb 8").Visible = True
End Sub
Sub Gomb4_Click()
Torles
ActiveSheet.Shapes("Gomb 9").Visible = True
End Sub
Sub Gomb5_Click()
Torles
ActiveSheet.Shapes("Gomb 10").Visible = True
End Sub
Sub Torles()
ActiveSheet.Shapes.Range(Array("Button 6", "Button 7", "Button 8", "Button 9", "Button 10")).Visible = False
End 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
- Kaspersky, BitDefender, Avast és egyéb vírusírtó licencek a legolcsóbban, egyenesen a gyártóktól!
- Windows 10/11 Home/Pro , Office 2024 kulcsok
- 27%-OS ÁFÁS SZÁMLA I Jogtiszta Microsoft digitális és fizikai termékek I DIGITALKEYZ.COM
- Vírusirtó, Antivirus, VPN kulcsok
- Akciós Windows 10 pro + Office 2019 professional plus csomag AZONNALI SZÁLLÍTÁS
- Számlás!Steam,EA,Epic és egyébb játékok Pc-re vagy XBox!
- Bomba ár! Dell Latitude E7440 - i7-4GEN I 8GB I 256SSD I 14" FHD Touch I HDMI I Cam I W10 I Gari!
- Gamer PC-Számítógép! Csere-Beszámítás! R5 5600X / 32GB DDR4 / RTX 3060Ti 8GB / 500GB SSD
- Gamer Notebook! Csere-Beszámítás! Asus Tuf F15 FX506H / 11400H / RTX 3050 / 16GB DDR4 / 512 SSD
- Lenovo Legion Pro 7 i9-14900HX 64GB RAM 2TB SSD 16" QHD+ 240Hz RTX 4080 12GB 175W DOBOZÁBAN, MAGYAR
Állásajánlatok
Cég: FOTC
Város: Budapest