-
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
-
Delila_1
veterán
válasz
kokopeti #13247 üzenetére
Fire megadta a választ.
Egyszerűsítheted az adatok felírását az Adatok lapra, valamint a TextBoxok tartalmának a lenullázását, ha a beszédes nevek – vevo_nev, vevo_cim – helyett kivételesen a nehezebben követhető TB1, TB2 ... TB11 nevet adsz.
Private Sub Bevisz_Click()
Dim WSA As Worksheet, hova As Long, oszlop%, nev As String
Set WSA = Sheets("Adatok")
hova = WSA.Range("A65536").End(xlUp).Row + 1
For oszlop% = 1 To 11
nev = "TB" & oszlop%
WSA.Cells(hova, oszlop) = Controls(nev).Text
Controls(nev).Text = ""
Next
End SubMegjegyzésben beírhatod a makróba, melyik TextBox milyen értéket tartalmaz.
-
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 -
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) -
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 -
Delila_1
veterán
válasz
Solar_Wind #13211 üzenetére
Szívesen.
-
Delila_1
veterán
válasz
Solar_Wind #13199 üzenetére
Egy cellában megadod a címet, valahogy így: =év(ma()) & ". évi akármi"
Legyen a példában ez a C1 cella tartalma.A diagramon kijelölöd a címet, és a szerkesztőlécen megadod lapnévvel együtt a cím helyét:
=Munka1!C1 -
Delila_1
veterán
válasz
Vizes Tomi #13195 üzenetére
Szívesen.
-
Delila_1
veterán
válasz
Vizes Tomi #13192 üzenetére
Szűröd szín szerint, a Nincs kitöltés paraméterrel, ezzel elrejted a színezett sorokat. A makró futtatása után megszünteted a szűrést.
-
Delila_1
veterán
válasz
Vizes Tomi #13188 üzenetére
Szűrd a C oszlopot úgy, hogy a színezett sorok rejtettek legyenek. A makró az F oszlopba beírja a két formázott sor közötti, E oszlopban található számokat.
Ha nem jó az F oszlop, a két, csillaggal jelölt sorban a 6-ot írd át egy üres oszlopod sorszámára.
Sub osszegek()
Dim sor As Long, ossz
ossz = 0
For sor = 2 To ActiveSheet.UsedRange.Rows.Count
If Rows(sor).Hidden = True Then
Cells(sor, 6) = 0 '******
Cells(sor - 1, 6) = ossz '******
ossz = 0
Else
ossz = ossz + Cells(sor, 5)
End If
Next
End Sub -
Delila_1
veterán
válasz
Vizes Tomi #13127 üzenetére
Épp tegnap írtam egy fórumtársunknak erre egy makrót. Két helyen javíts benne.
Az egyik
a cserélendő terület helye: ter = "$E$5: I1407",
a másik az
If IsNumeric(Mid(ertek, b%, 1)) Or Mid(ertek, b%, 1) = Chr(44) Then _ sorban a Chr(44)-ben a 44. Ott vessző volt a tizedes jel, de érdekes módon nem fogadta el
Mid(ertek, b%, 1) ="," módon. Ha nincs tizedes tört az átalakítandó számok között, az
Or Mid(ertek, b%, 1) = Chr(44) részt hagyd ki.Az ASCII értéket úgy határozhatod meg, hogy a szövegrészben kijelölöd a karaktert, másolod, és egy másik cellába beilleszted. Erre az új cellára hivatkozva a =KÓD(cella) megadja az értéket. Hosszabb karaktersorozat esetén az első karakter kódja a visszatérési érték.
Sub Szam()
Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual
Dim ter As String, sz As Variant, b%, uj$, ertek
ter = "$E$5:I1407"
For Each sz In Range(ter)
ertek = sz
If ertek <> "" Then
uj$ = ""
For b% = 1 To Len(sz)
If IsNumeric(Mid(ertek, b%, 1)) Or Mid(ertek, b%, 1) = Chr(44) Then _
uj$ = uj$ & Mid(ertek, b%, 1)
Next
Range(sz.Address) = uj$ * 1
End If
Next
Application.ScreenUpdating = True
Application.Calculation = xlCalculationAutomatic
MsgBox "Kész"
End Sub -
Delila_1
veterán
Mese a megjegyzésekben.
Sub Gyomlal()
'Az A1:A10 tartomány beírása az "eredeti" tömbbe
eredeti = Application.Transpose(Range("A1:A10"))
'Egyformák törlése az A oszlopból
For sor = 10 To 1 Step -1
If Application.CountIf(Columns(1), Cells(sor, 1)) > 1 Then _
Cells(sor, 1).Delete Shift:=xlUp
Next
'A kigyomlált A1:Ax tartomány beírása az "uj" tömbbe
usor = Range("A1").End(xlDown).Row
uj = Application.Transpose(Range("A1:A" & usor))
End Sub -
-
Delila_1
veterán
válasz
m.zmrzlina #13084 üzenetére
A HOL.VAN megadja az oszlop sorszámát, a KARAKTER átalakítja az oszlop betűjelére. Ehhez csak annyit kell tudni, hogy az A karakter ASCII értéke 65.
A KARAKTER függvény a paraméterében megadott számot alakítja betűvé.
Szerk.: szívesen.
-
Delila_1
veterán
válasz
m.zmrzlina #13082 üzenetére
H2-be: =KARAKTER(HOL.VAN(G1;A1:E1;0)+64)
G3-ba: =HA(DARABTELI(INDIREKT(H2&":"&H2);G2)>0;"van";"nincs") -
Delila_1
veterán
válasz
föccer #13074 üzenetére
Még egyszerűbb, ha egy új oszlopba beviszel egy képletet: =A1 & "" (feltételezve, hogy az adat az A1 cellában kezdődik). Ezt lemásolod az eredeti adatok mellé, majd kijelölöd, másolod (Ctrl+C). Ráállsz az eredeti A1 cellára, Irányított beillesztés, Értékként.
A segédoszlopot ezután törölheted. -
Delila_1
veterán
válasz
attiati #13036 üzenetére
Újra átolvasva a kérdésedet, valóban nem kell a +1.
Nem szükséges, hogy a képlet a mellette lévő oszlopra hivatkozzon, de a balra mellette lévő oszlopban legyenek bármilyen adatok ahhoz, hogy dupla kattintásra végig lemásolódjanak a képletek. Ameddig van adat, addig lesz másolat.
Most, hogy kiveszed a +1-et, működni fog a duplaklikk, mert a másik lehetőség, hogy az aktuális oszlopban legyenek folyamatosan valamilyen adatok, képletek.
-
Delila_1
veterán
válasz
attiati #13024 üzenetére
Ilyesmi kell hozzá:
=MAX(INDIREKT("A"&SOR()+1&":A"&SOR()+$C$1))
ahol az összegek az A oszlopban vannak, és a C1-be írod be, hány szám maximumát akarod kiszámoltatni. Pl. C1=5. A B2-ben megadott képlet az A3:A7 max értékét adja, lehúzva a képletet a B10 az A11:A15-ét.
Egyébként nem kell végighúzni a képletet. Mikor beírtad az elsőt, a cellán állva a jobb alsó sarkában lévő kis fekete négyzetre klikkelsz duplán, és az végig másolja addig, ameddig a tőle balra lévő oszlopban valamilyen adatot talál, vagy addig, ameddig a saját oszlopában van adat.
-
Delila_1
veterán
válasz
Mannon #13003 üzenetére
Nekem van, mert megírtam.
Sub Érték_beillesztése()
Selection.PasteSpecial Paste:=xlValues
Application.CutCopyMode = False
End SubEzt a makrót a personalba vidd be (több leírást találsz itt róla a fórumon). Mikor bevitted, az Excelben Alt+F8-cal előcsalod a makrókat, kiválasztod a listából (ha van több is), és az Egyebeknél gyorsbillentyűt rendelsz hozzá.
Működés: Kijelölöd és másolod (Ctrl+C) a tartományt, oda lépsz, ahova az értéket be akarod illeszteni, és megadod a bill. kombinációt.
-
Delila_1
veterán
Egy kicsit egyszerűsítettem a 2. adatnál. Kevesebb változó, kevesebb számolás.
El tudod küldeni? Megnézném, mi lassítja.
A változók nevét érdemes úgy meghatározni, hogy utaljanak a tartalmukra.Sub Kitolt_1()
Dim WS As Worksheet
Dim sor%, usor%
Set WS = Sheets("Lekérdezés")
usor% = WS.UsedRange.Rows.Count
For sor% = 1 To usor% - 1
Cells(sor% + 1, 1) = WS.Cells(sor%, 1)
szla = WS.Cells(sor%, 2)
Cells(sor% + 1, 2) = Left(szla, 8) + "-" + Mid(szla, 9, 8) + "-" + Mid(szla, 17, 8)
'......hasonló 8. oszlopig
Next sor%
End Sub -
Delila_1
veterán
válasz
ro_bert17 #12982 üzenetére
Igen.
Egy füzet minden lapján add meg ezt a formátumot. Azt is beállíthatod, hogy a cellák függőleges igazítása középen legyen, meg minden mást, amit még szeretnél.
A mentés másként menüpontban Munkafüzet.xlt (sablon) nevet adj neki.
Ekkor a
C:\Documents and Settings\Felhasználó\Application Data\Microsoft\Excel\XLSTART
könyvtárba menti el, és minden újonnan megnyitott füzetednek ez lesz a formátuma. -
Delila_1
veterán
Lehet, hogy félreértem, mert túl egyszerűnek tűnik a feladat.
Tehát a Munka1 lapodon vannak az adataid 12 oszlopban (A:L).
Ezeket szűrd kedved szerint, majd indítsd aSub másol()
Sheets("Munka2").Columns("A:L").Delete
Sheets("Munka1").Select
Dim ter As Range
Set ter = Range(Range("A1"), Range("L" & Rows.Count).End(xlUp)).SpecialCells(xlCellTypeVisible)
ter.Copy Sheets("Munka2").Cells(1, 1)
End Submakrót. Ez a Munka2 lapra másolja az aktuális szűrésnek megfelelő adatokat, amiket már rendezhetsz pl. a dátumok szerint.
-
Delila_1
veterán
Az ActiveSheet.UsedRange.Rows.Count az aktív lap utolsó kitöltött sorának a számát adja, az ActiveSheet.UsedRange.Columns.Count pedig az oszlopét.
Ebből következik, hogy a ter nevű változónak az A1 cellától az utolsó használatban lévő oszlopig és sorig tartó területet adjuk meg. Ebben a tartományban keressük a meghatározott szöveget.
Én is autodidakta módon tanulok.
-
Delila_1
veterán
Az ActiveSheet.UsedRange.Rows.Count az aktív lap utolsó kitöltött sorának a számát adja, az ActiveSheet.UsedRange.Columns.Count pedig az oszlopét.
Ebből következik, hogy a ter nevű változónak az A1 cellától az utolsó használatban lévő oszlopig és sorig tartó területet adjuk meg. Ebben a tartományban keressük a meghatározott szöveget.
Én is autodidakta módon tanulok.
-
Delila_1
veterán
A makró kiírja a Blabla szöveget tartalmazó cella címét, és beteszi a sor és az oszlop változókba a címnek ezt a két adatát, további felhasználás céljára.
Sub keres()
Dim ter As Range, CV As Variant, sor As Long, oszlop As Long
Set ter = Range(Cells(1, 1), Cells(ActiveSheet.UsedRange.Rows.Count, _
ActiveSheet.UsedRange.Columns.Count))
For Each CV In ter
If CV = "Blabla" Then
sor = CV.Row: oszlop = CV.Column
MsgBox CV.Address
Exit For
End If
Next
'A sor és oszlop változó további felhasználása
'...
'...
End Sub -
Delila_1
veterán
-
Delila_1
veterán
válasz
Zenebohoc #12924 üzenetére
A Tartalomjegyzék legyen az első lap. Ezen az első makró létrehozza a tartalomjegyzéket.
Sub Tartalom()
Dim lap%, nev$, sor%
Cells(2, 2) = "TARTALOMJEGYZÉK"
sor% = 4
For lap% = 2 To Worksheets.Count
nev$ = Worksheets(lap%).Name
Cells(sor%, 2).Select
Selection.Hyperlinks.Add Anchor:=Selection, Address:="", SubAddress:= _
"'" & nev$ & "'!A1", TextToDisplay:=nev$ & " A1 cella"
sor% = sor% + 1
Next
Cells(2, 2).Select
End SubA következő makrót a Tartalomjegyzék laphoz rendeld, ez figyeli a G1 cella változását.
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$G$1" Then Rejt Target.Value
End SubA 3. makró modulba kerül, mint az első.
A Tartalomjegyzék lap G1 cellájába írd a karaktert, amit ha tartalmaz a felsorolás valamelyik tagja, az annak megfelelő fül elérhető-, a többi lap rejtett lesz. Az összes lap felfedéséhez töröld a G1 tartalmát.Sub Rejt(keres)
Dim lap%, lel, sor%
If Cells(1, 7) = "" Then
For lap% = 2 To Worksheets.Count
Sheets(lap%).Visible = True
Next
Else
keres = "*" & keres & "*"
For sor% = 4 To Cells(Rows.Count, "B").End(xlUp).Row
With Cells(sor%, 2)
Set lel = .Find(keres, LookIn:=xlValues)
If Not lel Is Nothing Then
Sheets(sor% - 2).Visible = True
Else
Sheets(sor% - 2).Visible = False
End If
lel = False
End With
Next
End If
End Sub -
Delila_1
veterán
válasz
DjSteve85 #12914 üzenetére
Nézd meg ezt!
Excelben készült. A C és N oszlop képletei eltérnek a közöttük lévőktől. -
Delila_1
veterán
válasz
exceltanulo #12907 üzenetére
Nem biztos, hogy jól értem a feladatot.
Az A1-be tettem a Most() függvényt, a C1-be az érvényesítést, ahol az egyik kiválasztható elem a "konvertálás szöveggé". Mikor ezt a lehetőséget választod, az A1 pillanatnyi értékét a kért formában bemásolja a B2 cellába. A makrót a laphoz kell rendelned.
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$C$1" And Target = "konvertálás szöveggé" Then
Range("B2") = Format(Cells(1,1), "yymmdd-hh-mm-ss")
End If
End Sub -
Delila_1
veterán
válasz
Fire/SOUL/CD #12885 üzenetére
Nem nevetjük ki a kicsibbiket!
Ideje, hogy előkerültél.
-
Delila_1
veterán
válasz
poffsoft #12882 üzenetére
A görbe szájú ikonból nem találtam ki, hogy az :F-et takar. Ezért adtam meg egy nagyobb tartományt.
A feladatot úgy értelmeztem, hogy az egyes futtatások eredményeként a másolt tartományok lépcsőzetes elrendezésben kerüljenek a másik lapra."Már csak tényleg az hiányzik, hogy az értékeket(4db cella) ne egymás alá tegye, hanem egymás mellé. Aztán a következő futásnál már új sort töltsön fel újra egymás mellé téve a cellákat." Itt elakadtam, mert az F2:F9 tartomány semmiképp sem lehet 4 db cella.
Cufter!
Jó lenne egy kép, ami megmutatná, mit hova másoljunk az első-, és az azt követő esetekben. -
Delila_1
veterán
válasz
exceltanulo #12878 üzenetére
Igen, az INDIREKT függvény akkor mutatja az értéket, ha a hivatkozott füzet is nyitva van.
Az első leírásból számomra nem derül ki, hogy a D:\MAPPA\ könyvtáron belül az 1001.xlsx az azonos nevű (1001) könyvtárban van-e, az 1002.xlsx pedig az 1002 könyvtárban. Ha igen, akkor a függvény
=INDIREKT("'D:\MAPPA\" & A1 & "\[" & A1 & ".xlsx]Munka1'!$C$2") -
Delila_1
veterán
válasz
Cufter #12873 üzenetére
Ehhez meg kell adnod a fix cellák helyét, és azt is, melyik sorba másoljon.
A képletet vigye át, vagy a képlet eredményét?
"egy gomb megnyomására a másik lapra egymás melletti cellálkba másolja mindig a következő új sorba, tehát a lista lefelé bővüljön" Ezt már az előbb sem értettem.
-
Delila_1
veterán
válasz
exceltanulo #12869 üzenetére
Erre gondoltál?
-
Delila_1
veterán
válasz
poffsoft #12866 üzenetére
A .FormatConditions.Delete nem szünteti meg az eredeti formázásokat, csakis a feltételes formázással megadottakat. Kipróbáltam.
A formátum egyszerűbb másolása:
Selection.Copy
Range("A1:B5").PasteSpecial Paste:=xlPasteFormatsA Gauss funkciót is beviheted a feltételes formázásba.
-
Delila_1
veterán
válasz
poffsoft #12864 üzenetére
Az évben a húsvét vasárnapját ez a makró számítja ki:
Function Húsvét(Év As Integer) As Date
Dim D As Integer
D = (((255 - 11 * (Év Mod 19)) - 21) Mod 30) + 21
Húsvét = DateSerial(Év, 3, 1) + D + (D > 48) + 6 - ((Év + Év / 4 + D + (D > 48) + 1) Mod 7)
End FunctionA feltételes formázásba bevettem a húsvét hétfőjét is. A képlet:
=VAGY(A1=Húsvét(ÉV(MA()));A1=Húsvét(ÉV(MA()))+1)Ennél egyszerűbb, ha évente felveszel két tartományt. Az egyiket nevezd el Ünnepnek, a másikat MNnak. Az első tartalmazza az év összes ünnepnapi dátumát, a másik a munkanappá lefokozott szombatokat (az idén 5-öt). A feltételes formázások:
=NEM(HIBÁS(FKERES(A1;MN;1;0))) a szomorú szombatokra, és=ÉS(NEM(ÜRES(A1));VAGY(HÉT.NAPJA(A1;2)=6;HÉT.NAPJA(A1;2)=7;NEM(HIBÁS(FKERES(A1;Ünnep;1;0)))))
a hétvégékre és ünnepnapokra.Külön is veheted a szombatot, vasárnapot, és az ünnepnapokat, ha az Excel verziód megengedi.
-
Delila_1
veterán
-
Delila_1
veterán
-
Delila_1
veterán
-
Delila_1
veterán
válasz
luckyboi82 #12838 üzenetére
Félreértettem, azt hittem, más füzetekből csatolsz adatokat.
Sub HipAtcimez()
Dim CV As Hyperlink
For Each CV In ActiveSheet.Hyperlinks
CV.Address = Application.WorksheetFunction.Substitute(h.Address, "Z:\", "C:\")
Next
End SubA "Z:\" és a "C:\" helyett a teljes útvonalakat írd be. A cellákban a megjelenő szöveg változatlan marad, de az új útvonalról hívja be a linket.
-
Delila_1
veterán
válasz
Wasquez #12836 üzenetére
Ugyanúgy, a SZUM függvénnyel összegezheted az órákat, mint bármilyen más számokat, de az összegző cella formátuma legyen [ó]:pp. Ezt az Egyéni kategóriában adhatod meg.
A szombatokon és vasárnapokon kívül az ünnepnapoknak is eltérő külleműeknek kell lenniük. Az idei évben 5 szombat lesz munkanap, ezeknek sem jó a hétvégi kinézet.
Sorold fel a füzetedben – bárhol – az idei ünnepnapok dátumát, és nevezd el a tartományt ünnep-nek. Egy másik tartomány az 5 szombat dátumát tartalmazza, ennek a neve mn (munkanap).
A dátumok feltételes formázását add meg a kép szerint.
http://kephost.hu/share-0D18_4F30C0FC.html
A második képlet:
=ÉS(NEM(ÜRES(A2));VAGY(HÉT.NAPJA(A2;2)=6;HÉT.NAPJA(A2;2)=7;NEM(HIBÁS(FKERES(A2;ünnep;1;0))))) -
Delila_1
veterán
válasz
poffsoft #12832 üzenetére
Csak úgy tudod, hogy makróval végig lépkedsz a tartományon, ugyanazokat a feltételeket adod meg, amik a feltételes formázásban voltak, és megadod a formátumot.
A feltételes formázással színezett cellák színét lekérdezve az eredeti (felt. formázás nélküli) értékeket kapod, és valószínűleg igaz ez a szegélyre, fékövér karakterre, stb. beállításra is. Ki lehet próbálni.
-
Delila_1
veterán
válasz
luckyboi82 #12828 üzenetére
A Csere (Ctrl+h) funkcióval egyszerre le tudod cserélni a Z:\-t C:\-re, vagy a Csatolás-nál átváltod a forrást. Ez utóbbinak a módjára találsz itt a fórumon néhány hozzászólást, ha a csatolás szóra keresel.
-
Delila_1
veterán
válasz
VásRló #12823 üzenetére
A lapodhoz kell rendelned a makrót. Az A oszlop szűrésének módosításakor a C1-be beírja a feltételt. Ehhez azonban a lapon egy cellába (bármelyik cella lehet) be kell írnod a most függvényt: =MOST()
Private Sub Worksheet_Calculate()
Range("C1") = Cells(Range("A2:A65536").SpecialCells(xlCellTypeVisible).Row, 1)
End Sub -
Delila_1
veterán
Új hozzászólás Aktív témák
Hirdetés
- Eladó steam/ubisoft/EA/stb. kulcsok Bank/Revolut/Wise (EUR, USD, crypto OK)
- Windows 10 11 Pro Office 19 21 Pro Plus Retail kulcs 1 PC Mac AKCIÓ! Automatikus 0-24
- Microsoft licencek KIVÉTELES ÁRON AZONNAL - UTALÁSSAL IS AUTOMATIKUS KÉZBESÍTÉS - Windows és Office
- Bitdefender Total Security 3év/3eszköz! - Tökéletes védelem, Most kedvező áron!
- Sea of Thieves Premium Edition és Egyéb Játékkulcsok.
- LENOVO ThinkBook 13s - 13.3" FullHD IPS - i5-10210U - 8GB - 256GB SSD - Win11 - MAGYAR
- ÁRGARANCIA!Épített KomPhone Ryzen 5 4500 16/32/64GB RAM RTX 3050 6GB GAMER PC termékbeszámítással
- AKCIÓ! Csere-Beszámítás! Manli RTX 3070Ti 8GB GDDR6X Videokártya!
- Telefon felvásárlás!! Samsung Galaxy A70/Samsung Galaxy A71/Samsung Galaxy A72
- ASUS Radeon HD6950 DirectCU II 2GB 256bit GDDR5 EAH6950 DCII/2DI4S/2GD5 Videokártya eladó
Állásajánlatok
Cég: Promenade Publishing House Kft.
Város: Budapest
Cég: CAMERA-PRO Hungary Kft
Város: Budapest