Hirdetés
- sziku69: Fűzzük össze a szavakat :)
- Luck Dragon: Asszociációs játék. :)
- ubyegon2: Airfryer XL XXL forrólevegős sütő gyakorlati tanácsok, ötletek, receptek
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- gban: Ingyen kellene, de tegnapra
- Mert itt biztos, hogy megmarad.
- Sub-ZeRo: Euro Truck Simulator 2 & American Truck Simulator 1 (esetleg 2 majd, ha lesz) :)
- sidi: Samsung Deskmaster 386s/20n
- sziku69: Szólánc.
- eBay-es kütyük kis pénzért
-
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()
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
- Nem lesz Xiaomi 16
- Telekom otthoni szolgáltatások (TV, internet, telefon)
- Borderlands 4
- Battlefield 6
- EarFun Tune Pro - a család mindent tudója?
- sziku69: Fűzzük össze a szavakat :)
- Luck Dragon: Asszociációs játék. :)
- Vicces képek
- Kecskemét és környéke adok-veszek-beszélgetek
- ubyegon2: Airfryer XL XXL forrólevegős sütő gyakorlati tanácsok, ötletek, receptek
- További aktív témák...
- LG 27GR95UM - 27" MiniLED - UHD 4K - 160Hz 1ms - NVIDIA G-Sync - FreeSync Premium PRO - HDR 1000
- DELL Precision 5560 i7-11850H 32GB 1000GB T1200 FHD+ 1 év garancia
- SzinteÚJ! HP Elitebook 860 G9 i7-1255U 32GB 1000GB 16" FHD+ Gar.: 1 év
- Telefon felváráslás!! Samsung Galaxy S22/Samsung Galaxy S22+/Samsung Galaxy S22 Ultra
- GYÖNYÖRŰ iPhone 13 mini 256GB Blue -1 ÉV GARANCIA - Kártyafüggetlen, MS3407
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: Laptopműhely Bt.
Város: Budapest