-
Fototrend
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
Topikgazda
válasz ElemiKoczka #18622 üzenetére
Tegyük fel, hogy a dátumaid az A2-ben kezdődnek, az ünnepnapokat tartalmazó tartomány neve Ünnepek.
A feltételes formázás képlete: =NEM(HIBÁS(FKERES(A2;Ünnepek;1;0))) – 2003-as verzióig,
=HAHIBA(FKERES(A2;Ünnepek;1;0);"") – 2007-es verziótól kezdve.Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
Delila_1
Topikgazda
válasz paatrick #18627 üzenetére
1. Másik oszlopba írj, ebbe meg írd be a Nagybetűs(...) függvényt, ami a beírt szövegre hivatkozzon..
2. Rendeld egy gombhoz a makrót
Sub AutoSzuro()
Dim krit As Integer
For krit = 1 To 18
Selection.AutoFilter Field:=krit
Next
End Sub3. A 2013-at nem ismerem, de ha válogathatsz, a 2007-et hagyd ki.
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
Delila_1
Topikgazda
válasz ElemiKoczka #18631 üzenetére
Bocsi, kicsit zavaros nekem a leírás. Mi az, hogy az adott hónap dátuma?
Próbáld meg így:
A feltételes formázás első képlete =HÉT.NAPJA(A2;2)=7, ehhez rendeltem a szürke hátteret.
A második feltétel =NEM(HIBÁS(FKERES(A2;Ünnepek;1;0))), vagy 2007-től kezdve =HAHIBA(FKERES(A2;Ünnepek;1;0);""), ez a piros hátterű.A feltételes formázás a bal oldali fül dátumokat tartalmazó területére vonatkozik.
[ Szerkesztve ]
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
Delila_1
Topikgazda
válasz BenJoe80 #18639 üzenetére
A HA függvénynél feltételként szóközt adtál meg (" "), holott üres, tartalom nélküli stringet kellett volna (""). A két idézőjel között ne legyen sem szóköz, sem semmilyen más karakter. Ezzel a módszerrel minden függvényed azt az értéket adja, amit szeretnél.
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
Delila_1
Topikgazda
válasz ElemiKoczka #18640 üzenetére
Kijelölöd azt az oszlopot, ahova bevitted a formátumot.Duplán klikkelsz a formátumfestő ecsetre, majd átlépsz a következő lapra, és az ecsettel kijelölöd a kérdéses oszlopot. Mivel duplán kattintottál az ecsetre, nem kell újra felvenned hanem újabb lap, újabb jelölés az ecsettel. Kilépés a formátumfestés üzemmódból Esc billentyűvel, vagy újabb kattintással az ecset ikonra.
Próbáltam, hogy az ecsettel felveszem a formátumot, és egyszerre több kijelölt lapra másolom, de ezt nem hajtja végre az Excel.
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
Delila_1
Topikgazda
Vegyük, hogy amit módosítasz, a Munka1 lap A1 cellája.
A következő lapon erre a cellára kell hivatkoznod. Beírod a =Munka1!A1+1 képletet abba a cellába, ahol az előző dátum + 1 nap dátumot szeretnéd látni. A harmadik lap képlete =Munka1!A1+2.
Az Excelben az idő mértékegysége az 1 nap, ezért semmit sem kell változtatnod a képleten.
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
Delila_1
Topikgazda
válasz ElemiKoczka #18653 üzenetére
Nagyon szívesen.
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
Delila_1
Topikgazda
válasz ElemiKoczka #18656 üzenetére
Akkor valami baj van a kréta körül, mert hivatalból el kellene mentenie.
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
Delila_1
Topikgazda
válasz ElemiKoczka #18658 üzenetére
Privátban tegnap írtam, hogy küldd el a fájlt.
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
Delila_1
Topikgazda
válasz bandus #18668 üzenetére
Az aktuális lapod A oszlopában lévő utolsó, adatot tartalmazó sorának a számát adja meg.
TotalRows=Cells(Rows.Count, 1).End(xlUP).Row
TotalRows a változó neve, amibe eltárolja az értéket.
Rows.Count a lapon (füzetben) lévő összes sor, ami függ a verziótól.
Cells(Rows.Count, 1) a lap A oszlopának utolsó sora, verzió-függő.
.End(xlUP).Row ez annak a műveletnek a VBA-s leírása, mikor egy cellán állva (jelenleg az A oszlop legalsó celláján) Ctrl+fel nyilat nyomsz. Arra a cellára áll a fókusz, ami felfelé a hozzá legközelebb lévő, adatot tartalmazó cella.Ha egy lapon az alsó kitöltött sor alá akarsz pl. másolni, vagy beírni valamit, ezt szokás alkalmazni, de a végére kerül +1, hogy ne a kitöltött cellára írj.
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
Delila_1
Topikgazda
válasz bandus #18670 üzenetére
Utólag elolvasva a válaszomat rájöttem, hogy egy kicsit félrevezettelek.
Az .End(xlUP).Row ez annak a műveletnek a VBA-s leírása, mikor egy cellán állva (jelenleg az A oszlop legalsó celláján) Ctrl+fel nyilat nyomsz. mondat a .Row nélkül igaz. A Row határozza meg, hogy a cellának milyen tulajdonságát akarod a változóhoz rendelni. Ha Row helyett pl. Address-t írsz, a változó a cella címét tárolja el, és ezt beírathatod egy cellába, vagy másképpen használod fel.
Adhatsz .Inrerior.ColorIndex-et is Row helyett, akkor a megtalált cella háttérszínének a kódja lesz az eredmény. Sok lehetőség van ezeken kívül is.Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
Delila_1
Topikgazda
válasz desolator #18674 üzenetére
Valószínű, hogy a zöld alatti rész szöveg formátumú.
Írj a lapodon egy üres cellába egy egyest. Másold (Ctrl+c), majd jelöld ki az I oszlopon a nem zöld tartományt. Jobb klikk, Irányított beillesztés. Itt a műveletek közül a Szorzás-t jelöld be, OK.
Ezzel számmá alakítottad a szöveges tartományodat, a beírt egyest törölheted.Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
Delila_1
Topikgazda
A szöveg feldarabolására egy másik módszer a Szövegből oszlopok funkció használata. A különféle verziókban más helyen éred el. Ha megtaláltad, az első ablakban a Tagolt legyen jelölt, a másodikban az alapértelmezett Tab-ból vedd ki a pipát, az Egyéb-be írj egy / jelet, Befejezés.
A példád szerinti adatot az L oszlopig szétdarabolja, az utolsó oszlopban megkapod a kép címét a kiterjesztésével.
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
Delila_1
Topikgazda
Bekapcsolod az új makró rögzítését, lefuttatod kézzel (4-5 kattintás), kikapcsolod a rögzítést.
Kész a makró, és gombnyomásra indul.Azt meg lehet írni a rögzített makró végére, hogy soronként az utolsó oszlop tartalmát másolja egy új lapra.
[ Szerkesztve ]
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
Delila_1
Topikgazda
Ezt a makrót rendeld egy gombhoz. Az első részt rögzítővel hoztam össze.
Sub Jpg()
Dim usor As Long, sor As Long, oszlop As Integer
usor = Range("A" & Rows.Count).End(xlUp).Row
'Szövegből oszlopok
Range("A1:A" & usor).Select
Selection.TextToColumns Destination:=Range("A1"), DataType:=xlDelimited, _
TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=False, _
Semicolon:=False, Comma:=False, Space:=False, Other:=True, OtherChar _
:="/", FieldInfo:=Array(Array(1, 1), Array(2, 1), Array(3, 1), Array(4, 1), Array(5, _
1), Array(6, 1)), TrailingMinusNumbers:=True
'Munka2 lapra az utolsó oszlop adatai
For sor = 1 To usor
oszlop = Cells(sor, 100).End(xlToLeft).Column
Sheets("Munka2").Cells(sor, 1) = Cells(sor, oszlop)
Next
End SubProgramozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
Delila_1
Topikgazda
A makró a for-next ciklusban átteszi a képek címét a Munka2 lap A oszlopába.
Mivel nálad nem az első sorban kezdődnek az adatok, a ciklus kezdetét ne 1-ben határozd meg.Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
Delila_1
Topikgazda
Nem kockáztatnám meg, hogy a hozzá nem értő júzer kitörölje a szépen összehozott, összetett képletet.
A makró nem terheli a memóriát, a sok hosszú képlet sok adatnál viszont igen, komoly lassulást okozva.Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
Delila_1
Topikgazda
válasz Vizes Tomi #18709 üzenetére
A TNÉV függvény pontosan ezt csinálja.
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
Delila_1
Topikgazda
válasz Vizes Tomi #18711 üzenetére
Nincs nit.
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
Delila_1
Topikgazda
válasz mr.nagy #18723 üzenetére
Az első makrót a lapodhoz rendeld. Ez figyeli az A5 cella változását.
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$A$5" Then Osszefuz
End SubMikor új adatot viszel be az A5-be, meghívja a modulba írt Osszefuz makrót, ami a B5 cellában összefűzi az azonos kódhoz tartozó adatokat.
Sub Osszefuz()
Dim kriterium, Rng As Range, usor As Long, CV As Object
Application.EnableEvents = False
Range("B5") = ""
kriterium = Range("A5")
Range("A4:D4").AutoFilter
Selection.AutoFilter Field:=3, Criteria1:=kriterium
usor = Range("D4").End(xlDown).Row
Set Rng = Range("D5:D" & usor).SpecialCells(xlCellTypeVisible)
For Each CV In Rng
Range("B5") = Range("B5") & " " & CV
Next
Application.EnableEvents = True
Selection.AutoFilter
End SubProgramozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
Delila_1
Topikgazda
válasz Vizes Tomi #18722 üzenetére
A két lapnak Rejtett, és Látható nevet adtam. Az első makrót a Látható laphoz rendeld. Ezen a lapon az A1 cellába beírod a keresett azonosítót.
Private Sub Worksheet_Change(ByVal Target As Range)
Rows("5:10000").ClearContents
If Target.Address = "$A$1" Then
Rows("5:10000").ClearContents
Listaz Target
End If
End SubA második makró, amit modulba másolsz be, a Látható lapra átmásolja a kritériumnak megfelelő sorokat, az A5 cellától kezdve. A 4. sorba beírhatod az oszlopok címét (Azonosító ... Összeg)
Sub Listaz(krit)
Dim usor As Long, Rng As Range
Application.EnableEvents = False
Sheets("Rejtett").Select
Selection.AutoFilter Field:=1, Criteria1:=krit
usor = Range("A1").End(xlDown).Row
Set Rng = Range("A2:D" & usor).SpecialCells(xlCellTypeVisible)
Rng.Copy Sheets("Látható").Range("A5")
Sheets("Látható").Select
Application.EnableEvents = True
End SubProgramozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
Delila_1
Topikgazda
Érdemes meghatározni, hány sor van az A oszlopban. Ezt több módon meg lehet állapítani, pl.
lastrow=range("A1").end(xkdown).rowJöhet a függvény.
range("A1:A" & lastrow)= "=függvény"Szakkönyvekből, fórumokon járkálva lehet tanulni, és vannak ilyen helyek, amik segítséget nyújtanak. A YouTube-on is rengeteg példát találsz.
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
Delila_1
Topikgazda
Jó, ahogy írtad.
Egy lépésben:
Sub tiz()
Range("B1:B" & Cells(Rows.Count, "A").End(xlUp).Row).FormulaR1C1 = "=IF(RC[-1]=10,""Igaz"",""Hamis"")"
End SubEgyszerűbben:
Sub Tiz()
Range("B1:B" & Cells(Rows.Count, "A").End(xlUp).Row) = "=if(A1=10,""Igaz"",""Hamis"")"
End Sub[ Szerkesztve ]
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
Delila_1
Topikgazda
válasz Vizes Tomi #18734 üzenetére
Szia!
A Látható lap fülén jobb klikk, Kód megjelenítése. Ezzel bejutottál a VBA szerkesztőjébe. Látod, hogy bal oldalon a lapok felsorolásánál a Látható lapod van kijelölve. A jobb oldali üres területre másold az első makrót.
Bal oldalon a füzeted nevén állva az Insert menü Module almenüjére kattints, kapsz egy új modult, aminek Module...n lesz a neve. Erre kattintva jobb oldalon ismét üres területet kapsz, ide másold a második makrót.
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
Delila_1
Topikgazda
válasz Vizes Tomi #18736 üzenetére
Melyik verziót használod?
Készítek egy füzetet, amibe majd átmásolod az adataidat. Abban már az is benne lesz, hogy a látható lapon vihetsz fel új sort a rejtettre.
Add meg a lapok általad használt nevét is.Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
Delila_1
Topikgazda
válasz föccer #18738 üzenetére
Felveszel egy új oszlopot, amibe végig az első oszlop max értékeit teszed. Ez egy vízszintes vonalat eredményez a grafikonodon, ami a max értéknél metszi a görbét.
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
Delila_1
Topikgazda
-
Delila_1
Topikgazda
válasz q13579 #18745 üzenetére
A képen a 3 lapot egymás mellé tettem. A Munka3 lapra gyűjtöm a két első lapról az adatokat. Itt felvettem egy segédoszlopot – a képletét láthatod a szerkesztőlécen –, mert a feltételes formázás csak a saját lapján lévő adatok szerint működik.
A felt . formázás 2 képlete
=$C1=1 (egyik szín) és
=$C1=2 (másik szín)Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
-
-
Delila_1
Topikgazda
válasz tamas1985 #18756 üzenetére
Képletek:
C8 -> =BAL(B8;2)*1
D8-> =JOBB(B8;HOSSZ(B8)-3)*1
E8-> =GCD(C8:D8) Legnagyobb közös osztó
F8-> =C8/E8&":"&D8/E8Az 1-gyel való szorzás azért kell, mert egy számjegyekből álló szöveg bal-, ill. jobb oldala szintén szöveg, amivel nem lehet számolni. A felszorzás számmá alakítja a két felet.
Biztosan elírás a legkisebb közös osztó, nyilván legnagyobbat akartál írni.Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
Új hozzászólás Aktív témák
- HTPC (házimozi PC) topik
- Intel Core i5 / i7 / i9 "Alder Lake-Raptor Lake/Refresh" (LGA1700)
- antikomcsi: Való Világ: A piszkos 12 - VV12 - Való Világ 12
- Mibe tegyem a megtakarításaimat?
- TCL LCD és LED TV-k
- Samsung Galaxy A55 - új év, régi stratégia
- DIGI kábel TV
- Kávé kezdőknek - amatőr koffeinisták anonim klubja
- EAFC 24
- PlayStation 5
- További aktív témák...
Állásajánlatok
Cég: Alpha Laptopszerviz Kft.
Város: Pécs
Cég: Ozeki Kft.
Város: Debrecen