- Samsung Galaxy S24 Ultra - ha működik, ne változtass!
- iPhone topik
- Samsung Galaxy S21 FE 5G - utóirat
- Samsung Galaxy S25 Ultra - titán keret, acélos teljesítmény
- A sógorokhoz érkezik a kompakt Vivo X200 FE
- Garmin Forerunner 970 - fogd a pénzt, és fuss!
- Prohardver app (nem hivatalos)
- Samsung Galaxy S20 Ultra 5G - nagy ügy
- Nem maradhat AI nélkül a strapaszekció sem
- Xiaomi 14T Pro - teljes a család?
-
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
Eszerint félreértettem, a makrók levédésére gondoltam. (VB->Visual Basic)
A füzetet elrejtheted az Ablak menü Elrejtés pontjával. Ezt csak azok nem tudják felfedni, akik nem ismerik, hogy ugyanitt van mód a láthatóvá tételére is. De ha már eleve olyan könyvtárba mentetted a fájlodat, ahol másnak eszébe sem jut keresni, nyert ügyed van.Az egyes lapokat jelszóval levédheted az Eszközök/Védelem/Lapvédelem menüben.
A cellák alapállásban védettek, de ez a tulajdonságuk csak akkor érvényesül, ha bekapcsoltad a lapvédelmet. Ebből következik, hogy amelyik cellák módosítását engedélyezni akarod, azoknál a Cellaformázásban a Védelem lapon ki kell venned a pipát a Zárolt négyzetből. Ugyanott a Rejtett négyzet bejelölésével azt éred el, hogy a védett lapon nem látszanak a képletek, csak az eredményük.
A lapvédelemnél több dolgot le tudsz tiltani, főleg a 2003-nál és 2007-nél. -
Delila_1
veterán
Az Eszköztáron (ikonsoron) jobb klikk, a megjelenő gyorsmenüben bejelölöd az Űrlapokat. Az Űrlapok eszköztáron a Gombra kattintasz, és berajzolod vele a megfelelő helyre. Ekkor a Makró-hozzárendelés párbeszéd ablakban felajánjla a Gomb1_Kattintáskor című makrót, amit most írhatnál meg. A listában viszont megtalálod az előzően bevitt OtosLotto címűt, ezt rendeld hozzá.
A gomb méretét, helyzetét és feliratát ezután kedvedre módosíthatod, ha az egér jobb gombjával kattintasz rá. -
Delila_1
veterán
válasz
dtpeter #5109 üzenetére
Az R1C1 formulánál azt adhatod meg, hogy az aktuális cellához képest hány sorral és oszoppal elcsúsztatott értékekkel akarsz dolgozni.
Range("F5").FormulaR1C1 = "=R[1]C[-3]"
Ennek a sornak a hatására az F5 cellába az alatta lévő sorban [1], és a 3-mal előtte lévő oszlopban [-3] lévő érték íródik be képletként, vagyis az F5-ben ez lesz: =C6.
Nálad a képletnél elhagynám az R1C1 hivatkozást.Az összegző képlet beíratása:
vSor = Range("A1").End(xlDown).Row + 1
Cells(vSor, 1).Formula = "=SUM(A3:A" & vSor - 1 & ")"Ugyanez másképp:
vSor = Range("A1").End(xlDown).Row
Cells(vSor+1, 1).Formula = "=SUM(A3:A" & vSor & ")"A különböző fórumokon leginkább Kovalcsik Gézától ajánják Az Excel (ide jön a verziószám) programozása című könyvet. Évek óta keresem, és most sikerült megszereznem egy internetes antikváriumtól (új állapotban, de a CD melléklet hiányzik).
Krizsák László: Az Excel 7.0 programozása is nagyon jó az alapok megismeréséhez, de ezt sem lehet kapni. Új kiadásuk nincs – pedig Kovalcsik könyvét több évben is kiadták –, ilyen jellegű könyveket meg nem szokás antikváriumoknak eladni. -
Delila_1
veterán
Az utoljára beírt adataid most valószínűleg a C2733-ban kezdődnek, azért következik a 2734-es sor.
A makró megnyitja a webes fájlt, és bemásolja az 5 adatot a helyére. A két utolsó sor bezárja a szerencsejatek.hu füzetét, ezeket kihagyhatod, ha még nézelődni akarsz benne.
A Windows("Munkafüzet1").Activate sorban a Munkafüzet1 helyett a saját füzeted nevét írd be.Sub OtosLotto()
Workbooks.Open Filename:="http://www.szerencsejatek.hu/xls/otos.xls"
Range("L4:P4").Copy
Windows("Munkafüzet1").Activate 'Ide a saját füzeted nevét írd
Sheets("otos").Select
usor = Range("C65536").End(xlUp).Row + 1
Cells(usor, 3).Select
ActiveSheet.Paste
Application.CutCopyMode = False
'Webes fájl bezárása
Windows("otos.xls").Activate
ActiveWindow.Close
End Sub -
Delila_1
veterán
válasz
RoyalFlush #5100 üzenetére
Ebben a képletben a Táblázatok egy lap neve. Az I184-es cella helyét keresi a Táblázatok lap 325. sorában, a B és F oszlopok között. A 0 paraméter azt jelenti, hogy pontos értéket keres.
A q_ is egy területet jelöl.
A teljes képlet értelme az, hogy ha a 3 cella – I184, I185 és I186 – tartalmaz valamilyen értéket, vagyis nem üres, akkor az I185 értékét megkeresi q_ -val jelölt területnek abban az oszlopában, ahol az I184 értéke megtalálható a Táblázatok lap 325. sorában a B és F oszlopok között. Ha a 3 cella közül bármelyik üres, a képlet eredménye is üres ("") lesz.
A belinkelt képen a sárga hátterű tartományt neveztem el q_-nak. -
Delila_1
veterán
válasz
Fehér Mancs #5098 üzenetére
Még egy alternatíva:
=érték(B1)
akár HA függvénnyel kombinálva. -
Delila_1
veterán
Egy képlettel hivatkozz az oszlop celláira, és szorozd be 1-gyel.
Pl. ha az M oszlop ez a "rákos", akkor egy új oszlopba ezt írd: =M1*1
A cellát lemásolod, ameddig kell, utána a teljes új oszlopot irányítottan, értékként beilleszted az M oszlop helyére.
Az is előfordulhat, hogy a beteg oszlopodban valamilyen ezres elválasztó karakter van.
Azt a csere funkcióval tüntetheted el. -
Delila_1
veterán
-
Delila_1
veterán
válasz
FireShadow #5086 üzenetére
A diagram készítésekor kaptál egy lapot, amin a diagram alapját képező kimutatás van.
Állj az Összesen oszlop valamelyik cellájára, nyomd meg a rendezés A->Z ikonját.
Az emelkedő sorrendbe állított adatokból kiválasztod a sorokat, amiket ábrázolni akarsz, és átmásolod egy másik helyre. Címet adsz az oszlopoknak, és már neki is ugorhatsz a diagram készítésének.Másik módszer: a kimutatásból irányított szűrővel kiválogatod a szükséges tételeket.
A diagram minták között a kör kategóriában találsz egy Kör-kör, és egy Kör-sáv nevezetűt, nézd meg ezeket, látványosan lehet megmutatni velük a nagyságrendileg eltérő adatokat. Ha ezek valamelyikét választod, meghatározhatod, melyik adatok kerüljenek a nagy körbe, és melyikek a kisebb körbe, vagy sávba. Ki kell jelölnöd a diagramon az adatokat, jobb klikk, Adatsorok formázása, Beállítások fül.
-
Delila_1
veterán
válasz
FireShadow #5080 üzenetére
Próbáld meg az Adatok/Kimutatás vagy kimutatásdiagram menüben a varázslóval. A varázsló végigvezet az ekészítésén, néhány kattintás az egész.
Az elrendezésnél a sorhoz a számot tartalmazó oszlop címkéjét húzd, az adathoz pedig az időtartamot. Ha véletlenül azt írná: Darab:időtartam, akkor (dupla?)klikk rá, a feljövő ablakból jelöld meg az összeget. Ez pontosan azt csinálja, amit szeretnél, számonként összegzi az időtartamokat.
Innen már gyerekjáték a kördiagram elkészítése. -
Delila_1
veterán
Amikor eljutottál a vezérlő formázásáig, megjelenik egy párbeszéd panel, azon vannak a kitöltendő rovatok.
Írd egymás alá valahova az egyik tízet, az előtte lévő oszlopba pedig mindegyik értéked elé a sorszámát. Mondjuk, ez az egyik tarományod a J1: J10 tartomány, akkor előtte a I1: I10 az 1...10 értéket tartalmazza. A bemeneti tartomány a J1: 10 lesz.
A legördülőt pl. A2-be rajzoltad, a cellacsatolás A2 legyen. Mikor a legördülő segítségével kiválasztod a lista egyik elemét, az A2-be beíródik az a sorszám, ahányadik a 10 közül a kiválasztott. Ha csak azt akarod, hogy látsszon ez a kiválasztott elem, semmit sem kell tenned, akkor a sorszámos oszlop sem kell. Ha azonban valahol a füzetedben máshol is akarod látni, akkor a "máshol" cellába beírod: =fkeres(A2;I1: J10;2;hamis).
Tudod, szóközöket nem kell hagynod a kettőspontok után, de itt a fórumon egy vigyori fej jelenne meg helyette, ha nem lenne szóköz.
Ugyanígy járj el a másik tíz adatoddal is. -
Delila_1
veterán
Megoldható, de sok ilyen cellánál visszafogja az Excelt.
Az Űrlapok eszköztárról a Kombi panelt kijelölöd, és a kapott szálkereszttel kijelölöd a beviteli cellát. Jobb klikk, Vezérlő formázása. Bemeneti tartomány az, ahol a felsorolásod van a választható adatokról. Cellacsatolásnak célszerű az alatta lévő cellát beírni, hogy a legördülő eltakarja a számot. Mert ennél a formánál az eredmény egy sorszám, mégpedig az, hogy a bemeneti tartomány hanyadik tagját választottad, tehát nem maga az érték, mint az érvényesítésnél.
Ha az értéket akarod valahol felhasználni, akkor a függőlegesen elhelyezett lista előtti oszlopba kell tenned egy 1-től növekvő sorszámot, és az FKERES (VLOOKUP) függvénnyel kell kikerestetned. -
Delila_1
veterán
válasz
Fire/SOUL/CD #5073 üzenetére
Ez tényleg nem valami fényesen sikerült.
A "csak a smile-k írtam" szöveg hiányos, szándékom szerint "csak a smile-k miatt írtam" lett volna, és természetesen szumha.
Talán túl korai volt az ébredésem.
-
Delila_1
veterán
válasz
[HUN]Tyson #5066 üzenetére
Pont egy hiba után teszed fel ezt a költői kérdést?!
-
Delila_1
veterán
válasz
[HUN]Tyson #5064 üzenetére
A Right szót írd át Left-re, az majd a végéről csípi le az utolsó pontosvesszőt és felesleges szóközt.
Bocsi, elírtam, és nem figyeltem fel a hibára.
-
Delila_1
veterán
A számok szétszedése külön cellákba egyszerűbb az Adatok/Szövegből oszlopok (tagolt, szóköz elválasztó) menüvel. Ez az A: G tartományba dobálja szét a számokat.
A kimutatásban a példád szerint az F oszlopba állva a rendező ikon segítségével emelkedő-, vagy csökkenő sorrendbe lehet tenni az adatokat.
-
Delila_1
veterán
válasz
[HUN]Tyson #5053 üzenetére
Most az adataid az A1-ben kezdődnek. Szúrj be elé egy sort, és az új A1-be adj valami címet (pl. e-mail), mert az irányított szűréshez ez szükséges.Állj az A1-en.
Adatok/Szűrő/Irányított szűrő, OK.
Más helyre másolja.
A listát automatikusan kijelöli.
A "Hova másolja" rovatba írj E1-et.
Jelöld be a "Csak az egyedi rekordok megjelenítése" négyzetet.
OK
E2-től lefelé minden cím csak egyszer szerepel.
Most töröld ki az első sort, hogy cím nélkül szerepeljenek az oszlopok.
Vidd be az új makrót, és indíthatod.Sub email()
Dim a, b, c, d As Long
c = 1: d = 100
For a = 1 To 28
For b = c To d
Cells(a, 2) = Cells(a, 2) & Cells(b, 5) & "; "
Next
Cells(a, 2) = Right(Cells(a, 2), Len(Cells(a, 2)) - 2)
c = a * 100 + 1: d = d + 100
Next
End Sub -
Delila_1
veterán
válasz
core1113 #5029 üzenetére
Írtam egy makrós megoldást a 2. kérdésedre.
A munka1 kiinduló lapon az A oszlopban vannak az irányítószámok, B oszlopban a megyék nevei, a többiben bármilyen adat.
A többi lap neve pontosan egyezzen meg a B oszlop adataival.
Minden lapon van címsor.
A "Sheets(Array(" kezdetű sorban írd át a megyék nevét.Sub Irszám()
Application.ScreenUpdating = False 'Képernyő frissítés tiltása
'Előző adatok törlése a megyék lapjain.
Sheets(Array("Pest", "Borsod", "Hajdú", "Zala", "Szolnok")).Select
Rows("2:6000").Select
Selection.Delete Shift:=xlUp
Range("A2").Select
'Sorok másolása a lapokra
Sheets("Munka1").Select
For sor = 2 To ActiveSheet.UsedRange.Rows.Count
megye = Cells(sor, 2)
Rows(sor & ":" & sor).Copy
Sheets(megye).Select
Cells(ActiveSheet.UsedRange.Rows.Count + 1, 1).Select
ActiveSheet.Paste
Sheets("Munka1").Select
Next
Sheets("Munka1").Select: Range("A2").Select
Application.CutCopyMode = False
Application.ScreenUpdating = True 'Képernyő frissítés engedélyezése
End Sub -
-
Delila_1
veterán
válasz
Hujikolp #4999 üzenetére
Ahogy már Cuci is írta, több értelmezése lehet a kérdésednek.
Vegyük most azt a változatot, mikor két adatsort kell ábrázolnod egy grafikonon. Az egyikben nagyságrendben közel azonos-, a másikban pedig nagyon eltérő értékek vannak.
A szokásos módon néhány kattintással elkészíted a grafikont. Kijelölöd azt az adatsort, amelyiket logaritmikus tengelyen akarsz ábrázolni. Jobb klikk, Adatsorok formázása, Tengely fül, Másodlagos tengely.
Ezután a másodlagos tengelyt jelölöd ki, jobb klikk, Tengely formázása, a Skála fülön bejelölöd a Logaritmikus skálát. -
Delila_1
veterán
válasz
Fehér Mancs #4989 üzenetére
A kimutatásnál is elegendő az oszlopok megadása, nem kell feltétlenül a sorokat is megadni. Akkor nincs baj a bővítésnél.
-
Delila_1
veterán
Nem kell előre beírni a képletek. Ha az Eszközök/Beállítások Szerkesztés lapján a "Cellaértékek automatikus kiegészítése" be van jelölve, a B oszlop bővítésével a C-be automatikusan beíródik a fölötte lévő képlet.
A H5: O6 tartományban érdemes a két képletet így megadni:
H5 -> =SZUMHA($C:$C;H3;$D:$D)
H6 -> =SZUMHA($C:$C;H3;$E:$E)Bővítésnél nem kell átírni a képleteket, mert csak az oszlopokat adjuk meg, a sorokat nem.
-
Delila_1
veterán
Amennyiben a dátumok emelkedő sorrendben vannak (legalábbis a hónapok), legegyszerűbb és látványosabb a Tagolás és részletek menüpontot alkalmazni.
Kikjelölöd az első hónap adatait tartalmazó sorokat (a címsort nem). Az Adatok/Tagolás és részletek menüpontban a Csoportba foglalást választod. Kijelölöd a következő hónap sorait, az F4 megismétli itt is a csopotrba foglalást. Így minden hónapot csoportba foglalsz.
Most az összes sort kijelölöd, az Adatok/Tagolás és részletek/Beállítások menüpontban kiveszed a pipát az "Összesítő sorok a részletsorok alatt" elől.
A havi összegek fölé beírod a SZUMot.A második képen látszik, hogy egy-egy egységet be tudsz zárni a mellette lévő mínusz jel segítségével, vagy ki tudsz bontani a + -szal. A bal oldalon fent lévő 1-re vagy 2-re kattintva az összes adat részleteinek mutatását, vagy elrejtését megadhatod.
-
Delila_1
veterán
válasz
VANESSZA1 #4935 üzenetére
Minden makrót lehet gombhoz rendelni. Fogalmam sincs, melyikkel kapcsolatban említettem.
Az automatikus számolás kikapcsolása: Application.Calculation=xlManual
Visszakapcsolás: Application.Calculation=xlAutomaticA ki- és bekapcsolás a teljes füzetre vonatkozik, nem lehet egy-egy területhez rendelni.
-
Delila_1
veterán
válasz
[HUN]Tyson #4902 üzenetére
Szívesen.
-
Delila_1
veterán
válasz
VANESSZA1 #4897 üzenetére
A makrót a laphoz rendeld: lapfülön jobb klikk, Kód megjelenítése. A kapott üres lapra másold be.
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 3 And Target.Value >= Date Then MsgBox "Figyelmeztetés"
End SubItt a C (harmadik) oszlop értékeit figyeltetem, a Target.Column = 3 -nál írhatod át. Ha az egész lapot akarod figyeltetni, a Target.Column = 3 And részt hagyd el.
-
Delila_1
veterán
válasz
Fire/SOUL/CD #4895 üzenetére
(nem vagyok haragban a "t" billentyűvel, de az előbb kettőt is kihagytam) -
Delila_1
veterán
válasz
[HUN]Tyson #4891 üzenetére
Egy-egy cella 32767 karakter bír el. A 100 cím 3-4000 karakternél nem lesz több.
Itt a makró hozzá, ami Fire beígértMintha ő nem tudná megírni!
Sub email()
Dim a, b, c, d As Long
c = 1: d = 100
For a = 1 To 28
For b = c To d
Cells(a, 2) = Cells(a, 2) & "; " & Cells(b, 1)
Next
Cells(a, 2) = Right(Cells(a, 2), Len(Cells(a, 2)) - 2)
c = a * 100 + 1: d = d + 100
Next
End Sub -
Delila_1
veterán
Vedd egyenként a függvényeket.
Az A1-ben van a haho-3,45
B1-be: =szöveg.keres("-";a1)
Ennek 5 lesz az eredénye. A képlet végére írd be a +1-et, a B1 értéke 6 lesz, innen, a 6. karaktertől kell majd a szám.Most a C1-be:
=közép(a1;b1;20)
Ez 3,45-öt ad majd, de szövegként, balra igazítva.
Írd át a képletet =(közép(a1;b1;20)*1 -re, ez számként hozza a 3,45-öt. -
Delila_1
veterán
válasz
Fehér Mancs #4849 üzenetére
A képletből véletlenül kimaradt egy * az XYZ előtt.
Helyesen: =szumha(a1:a100;"=*XYZ*";b1:b100)
Nagyon jó, nem ismertem. A feltételes formázásnál pedig nem jutott eszembe az ÜRES függvény használata. Köszi.
-
Delila_1
veterán
A CheckBox-ot elneveztem Jelölő-nek.
A makró a Jelölő jelölt állapotában összeadja az L1 és M1 értékét, jelöletlen állapotában pedig összeszorozza azokat. Az eredményt az N1 cellába – Cells(1,14) – írja.Sub keplet()
If CheckBoxes("Jelölő").Value = xlOn Then
Cells(1, 14).Formula = "=L1+M1"
Else
Cells(1, 14).Formula = "=L1*M1"
End If
End Sub -
Delila_1
veterán
A csere a Szerkesztés menüben van. Az oszlop kijelölése után a Mit keres-hez pontot, a Mire cseréli-hez vesszőt írj, és a Mindet gombbal hajtasd végre a cserét.
Ezt a műveletet rögzíted egy makróban, és egy gombhoz, vagy az eszköztáron egy ikonhoz rendeled.
Az R oszlopban némelyik szám dátumként jelenik meg a füzetedben, azokkal lesz baj. Pl. van közöttük 18.nov.; 23.márc. és 29.ápr.
Meg kell nézned az eredetiben, valószínűleg 18,11; 13.30 és 29,40. -
Delila_1
veterán
válasz
roomgrey #4812 üzenetére
Egy kicsit összetett lesz.
Az Irányítószámok lapon kijelölöd az A oszlopot, és az irsz nevet adod neki (Beszúrás> Név> Név megadása> a Munkafüzetben lévő nevek rovatba beírod: irszám. Lent, a Hivatkozásnál látod, ez van megadva: =Irányítószámok!$A$A).
A másik lapon az F17-et ugyanígy elnevezed Kért_szám-nak.
Most újra belépsz a névadáshoz, a név Tel lesz, a hivatkozáshoz bemásolod ezt a hosszú képletet.=OFSZET(INDIREKT(CÍM(HOL.VAN(Kért_szám;irsz;0);2;;;"Irányítószámok"));0;0;DARABTELI(irsz;Kért_szám);1)
A G7 cellán állva az Adatok> Érvényesítésnél a listát választod, a Forráshoz ezt írod:
=Tel -
Delila_1
veterán
válasz
Nowhere #4801 üzenetére
Az =Részösszeg(9;B2: B1000) [=Subtotal(9,B2: B1000)] megadja a B oszlopban (1000-ig) található számok összegét.
Most szűrd meg a tartományt az A oszlop szerint. Az Egyéni kategória Név legördülőjében a "tartalmaz"-nál (utolsó előtti választható paraméter) írd be a jobb oldali mezőbe az XYZ-t. A subtotal-os cella csak a látható cellák összegét mutatja.
Nem tudom az angol megfelelőjét, de biztosan megtalálod.
A B1000 előtt természetesen nincs szóköz, utólag tettem be a vigyori pofák miatt.
Új hozzászólás Aktív témák
Hirdetés
- Kertészet, mezőgazdaság topik
- bambano: Bambanő háza tája
- Autóhifi
- Milyen routert?
- HÁZIMOZI / HIFI / TV beárazás
- Samsung Galaxy S24 Ultra - ha működik, ne változtass!
- Medion E1003
- iPhone topik
- Samsung Galaxy S21 FE 5G - utóirat
- Autós topik látogatók beszélgetős, offolós topikja
- További aktív témák...
- Eredeti Microsoft termékek - MEGA Akciók! Windows, Office Pro Plus, Project Pro, Visio Pro stb.
- Adobe Előfizetések - Adobe Creative Cloud All Apps - 12 Hónap - NYÁRI AKCIÓ!
- Sea of Thieves Premium Edition és Egyéb Játékkulcsok.
- Eladó steam/ubisoft/EA/stb. kulcsok Bank/Revolut/Wise (EUR, USD, crypto OK)
- Bitdefender Total Security 3év/3eszköz! - Tökéletes védelem, Most kedvező áron!
Állásajánlatok
Cég: CAMERA-PRO Hungary Kft
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest