-
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
veterán
Szia
A makró bekéri a színezendő szót, majd a
B3: B8tartományban elvégzi a színezést.Sub Piros_szo()Dim sor As Integer, kezd, szo As String, hossz As Longszo = Application.InputBox("Add meg színezendő szót!", "Színezendő szó bekérése", , , , , , 2)hossz = Len(szo)For sor = 3 To 8 'Itt írhatod át a tartománytkezd = InStr(Cells(sor, "B"), szo) ' itt a B helyett a formázandó oszlop betűjelét írd beIf kezd >= 1 ThenCells(sor, "B").Characters(Start:=kezd, Length:=hossz).Font.ColorIndex = 3End IfNextEnd Sub -
Delila_1
veterán
válasz
modflow
#54800
üzenetére
Az FKERES függvény leírásában megtalálod, hogy az első paraméter a keresési érték, jelen esetben ez fixen az E1 cella tartalma. A második paraméter a tartomány, ahol keresel, ez a
B:Coszlop. Az FKERES függvény mindig a megadott tartomány első oszlopában keres. Harmadikban azt adod meg, hogy a tartománynak melyik oszlopából kéred vissza a kereséshez tartozó értéket, itt a másodikból. Az utolsó nulla jelzi, hogy pontos találatra van szükséged, ami helyett ha 1-et adnál meg, megközelítő értéket kapnál. Ilyenre akkor lehet szükség, ha például szám oszlopban keresnél, és a keresett érték nem szerepel a tartományban. -
Delila_1
veterán
Sok leírni, kevés alkalmazni.
Kiválasztod a menüt (pl. Beszúrás). Jobb klikk az egyik menüponton, Menüszalag testreszabása.
Balra fent kiválasztod a makrókat, jobbra fent a Fő lapokat.
A jobb oldali menüben új lapot év/vagy csoportot kell bevinni (jobbra lent), az új helyre felveheted a makródat.Szerk.: míg leírtam, módosítottad a kérdésedet. A fenti válaszom arra vonatkozik, hogy a szalagmenüre hogy lehet kitenni egy saját makró ikonját.
-
Delila_1
veterán
válasz
sopruk
#54602
üzenetére
Mindkét lapon számokká alakítottam a Termékkód oszlop adatait, elkerülendő, ha itt-ott akadna közöttük szöveg típusú. Egy cellába beírtam egy egyest, másoltam, majd irányítottan, szorzásként beillesztettem a jelölt helyekre. Ezután az FKERES függvény (HAHIBA függvénybe ágyazva) végzi a dolgát.
[data.hu] -
Delila_1
veterán
válasz
Geryson
#54257
üzenetére
[Itt levezeti] a Mutt által mutatott függvényt.
-
Delila_1
veterán
válasz
Héraklész
#54243
üzenetére
Állj a cellára, ami fölött, és tőle balra állandóan látni akarod az oszlopokat, ill. sorokat, majd a panelek rögzítése funkciót kapcsold be. Nem tudom, hol találod ezt a LibreOffice-ban, de biztosan megtalálod.
Ha a 3 első oszlopot akarod rögzíteni, és egyúttal a címsort is, akkor a D2-be állva végezd el.
A 2. kérdést nem értem. -
Delila_1
veterán
válasz
Derron
#54216
üzenetére
Tábázatként formázd az A: C tartományt. A C2 képlete:
=HA(BAL(A2;5)=BAL(B2;5);"OK";"NOK")
A Beállítások/Szerkesztés/Az Enter lenyomására a fókusz áthelyezése menüpontban válaszd a Jobbra opciót.
Az A és B oszlopban szüntesd meg a zárolást (Cellaformázás, Védelem lap), a Zárolt cellák kijelölése elől vedd ki a pipát.
Védd le a lapot (jelszóval vagy anélkül).
Minden bepittyegés után A-ból B-be, majd a következő A-ra áll a fókusz. -
Delila_1
veterán
válasz
Fire/SOUL/CD
#54167
üzenetére
Az eredmény függ attól, hogy kik használják a fájlt.
Abszolút védelem nincs, mint tudjuk. -
Delila_1
veterán
válasz
Fire/SOUL/CD
#54164
üzenetére
Magában a makróban meg lehet adni (pl. egy tömbben), hogy melyik jelszavakat fogadhatja el.
Ha nem jó az input, zárja be a füzetet. -
Delila_1
veterán
válasz
karlkani
#54069
üzenetére
Lehet, hogy le van tiltva a makró futtatása. Az Immediate ablakba (a VBE-ben Ctrl+g-re jön elő) írd be: Application.EnableEvents = True, és enterezd le.
A makrót kibővítheted, hogy pl. az első oszlopra kattintva hajtsa végre a feladatot.Private Sub Worksheet_SelectionChange(ByVal Target As Range)Dim usor As LongIf Target.Column = 1 ThenApplication.EnableEvents = Falseusor = Range("A1").End(xlDown).RowActiveSheet.CommandButton1.Top = Rows(usor).TopCells(usor, 1).SelectApplication.EnableEvents = TrueEnd IfEnd Sub -
Delila_1
veterán
-
-
Delila_1
veterán
válasz
andreas49
#53939
üzenetére
Sub Szelesseg_igazitas_1()Dim i As Integer, plusz As Integerplusz = Application.InputBox("Hány ponttal legyen szélesebb az oszlop?", Type:=1)ActiveSheet.UsedRange.Columns.AutoFitFor i = 1 To ActiveSheet.UsedRange.Columns.CountColumns(i).ColumnWidth = ActiveSheet.Columns(i).ColumnWidth + pluszNextMsgBox "Kész"End Sub -
Delila_1
veterán
Három segédoszlopot használok, ideiglegesen (E:G).
Az E:G tartomány képleteit össze lehet vonni a B és C oszlopokban, de így látod, mi alapján készült a B és C.Mikor kész, a két utóbbi oszlopot másolod, és értékként beilleszted a képletek helyére. Az eredeti A oszlopot törölheted.
-
Delila_1
veterán
válasz
tomi_x
#53880
üzenetére
Az Fferi által leírtakon kívül találkoztam olyan fájllal, ahova a felhasználó régebben csatolt egy halom képet, majd az ezeket tartalmazó oszlopokat törölte. Csodák csodája, hogy a képek megmaradtak, de nem látszottak, mert a szélességük 0 pont értékű lett.
Itt is a jó öreg F5-ös ugrás menü segített. Irányított, objektumok. Ez az összeset kijelölte, a Delete billentyű pedig mindet egyszerre törölte. A fájl mérete kicsire zsugorodott, a műveletek villámgyorsak lettek.
-
-
Delila_1
veterán
Kipróbáltam, csak 20-ig írja rendesen. A 21-40 sorokban megint 1-gyel kezdődnek a számok, de zárójelek közé teszi. 41-60 között pontot tesz a számok után, de itt is 1 a kezdő érték. A 61-86 sorokban zárójelek között az ABC kisbetűi következnek, majd kör közepén a nagybetűk.
Érdekes, még nem tudom, mire lehetne használni. -
Delila_1
veterán
válasz
Oryctolagus
#53804
üzenetére
A cella formátuma legyen általános, ezután másold be a képletet.
-
Delila_1
veterán
válasz
B.György_2
#53770
üzenetére
Használd egészséggel!
-
Delila_1
veterán
válasz
B.György_2
#53767
üzenetére
A D1 cella képletét láthatod a szerkesztőlécen.
-
Delila_1
veterán
válasz
karlkani
#53760
üzenetére
Egyszerűbb átalakítani a makrót, összegzésről szorzásra. Akkor nem kellenek segédoszlopok.
Function ColorProduct(Mintacella As Range, Tartomany As Range)Dim szorzat As Integer, CV As RangeApplication.Volatileszorzat = 1For Each CV In TartomanyIf CV.Interior.ColorIndex = Mintacella.Interior.ColorIndex Thenszorzat = szorzat * CV.ValueEnd IfNext CVColorProduct = szorzatEnd Function
-
Delila_1
veterán
Egy másik szempont az ünnepekhez:

-
Delila_1
veterán
válasz
animatrix11
#53423
üzenetére
Kijelölöd az oszlopot. A keresésnél beállítod, hogy tartalmazza a keresett szöveget.
A szűrt listában kijelölöd a látható cellákat, majd beírod a szöveget (xyz), és Ctrl+Enterrel viszed be. Ez az összes kijelölt cellában csak a keresett szöveget hagyja meg. -
Delila_1
veterán
válasz
repvez
#53414
üzenetére
EGY cellába bevitt adatot kell egy megfelelő lap megfelelő cellájába másolni a bevitt érték szerint? Ennél SOKKAL konkrétabban kellene leírnod a feladatot.
Makróval meg lehet oldani, de szerintem nem a bevitel végéhez kellene rögzíteni szortírozást, hanem pl. egy gombhoz, mert téves adat megadása esetén keresgélhetsz a lapok és cellák között a módosítás, vagy törlés miatt. -
Delila_1
veterán
válasz
szürke
#53375
üzenetére
Az utolsó lap neve legyen Összegzés.
A makró:Sub Szamlalas()Dim lap As Integer, sor As Integer, CV As Object, WSGy As Worksheet, db As IntegerSet WSGy = Sheets("Összegzés")For lap = 1 To Worksheets.Count - 1Sheets(lap).ActivateFor Each CV In Range("A1").CurrentRegionIf CV.Value > "" ThenIf Application.WorksheetFunction.CountIf(WSGy.Columns(1), CV.Value) = 0 Thensor = WSGy.Range("A" & Rows.Count).End(xlUp).Row + 1WSGy.Cells(sor, 1) = CV.Value: WSGy.Cells(sor, 2) = 1Elsesor = Application.Match(CV.Value, WSGy.Columns(1), 0)WSGy.Cells(sor, 2) = WSGy.Cells(sor, 2) + 1End IfEnd IfNextNextEnd Sub -
Delila_1
veterán
válasz
repvez
#53248
üzenetére
[Oszloppal]
Az Excel a térképhez kifejlesztette azt, amit küldtem.
Megoldás lehet, hogy átlátszó háttérrel ráteszel egy azonos méretű oszlopdiagramot. -
-
Delila_1
veterán
Makróval megoldható.
A képen az eredeti tábláról azE:Goszlopokba tettem egy másolatot, az összefűzés láthatósága miatt.
Nálad az A és B oszlopok lesznek összefűzve a C-ben. A makró ezt az oszlopot értékként saját magára illeszti.A makró:
Sub szinez()Dim sor As Integer, usor As Integer, hossz1 As Integer, hossz2 As Integerusor = Range("A" & Rows.Count).End(xlUp).RowRange("C2:C" & usor) = Range("C2:C" & usor).ValueFor sor = 2 To usorhossz1 = Len(Cells(sor, 1))hossz2 = Len(Cells(sor, 3)) - hossz1Cells(sor, 3).Characters(Start:=1, Length:=hossz1).Font.Color = -16776961Cells(sor, 3).Characters(Start:=hossz1 + 1, Length:=hossz2).Font.Color = -65536NextEnd Sub
Új hozzászólás Aktív témák
- Adobe Előfizetések - Adobe Creative Cloud All Apps - 12 Hónap - 15% AKCIÓ
- Eredeti Microsoft termékek - MEGA Akciók! Windows, Office Pro Plus, Project Pro, Visio Pro stb.
- Windows 10 11 Pro Office 19 21 Pro Plus Retail kulcs 1 PC Mac AKCIÓ! Automatikus 0-24
- Játékkulcsok ! : PC Steam, EA App, Ubisoft, Windows és egyéb játékok
- MS SQL Server 2016, 2017, 2019
- CÉGEK FIGYELEM!! iPhone 11 64GB Black -1 ÉV GARANCIA - 27% ÁFA-S SZÁMLA Kártyafüggetlen, 100% Akksi
- Csere-Beszámítás! Apple Macbook Pro 2013 vége! 512GB SSD, I7, 16GB DDR3, Intel Iris Pro! Olvass!
- GYÖNYÖRŰ iPhone 12 mini 256GB Red -1 ÉV GARANCIA -Kártyafüggetlen, MS3627
- ÁRGARANCIA!Épített KomPhone Ryzen 5 7500F 32/64GB RAM RTX 5070 12GB GAMER PC termékbeszámítással
- Keresek Galaxy S21/S21+/S21 Ultra/S21 FE
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cellán állva jobb klikk, hivatkozás, majd a kép szerint kiválasztod a lapot, és a cellát, ahova ugrani akarsz a cellára kattintáskor.

Az E:G tartomány képleteit össze lehet vonni a B és C oszlopokban, de így látod, mi alapján készült a B és C.



