Hirdetés
-
PROHARDVER!
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
-
lapa
veterán
...hmmm. sor minden cellája... szóval ha már pár ember volt olyan kedves, hogy megismertetett anno a vba-val azt hiszem az a legkevesebb, hogy próbálom átadni ugyanezt még több embernek.
a vba nem bonyolult, csak annak tűnik. rövid összefoglalás:
1 programkészítés:
1.1 bepipálod a menük közül a ''visual basic'' menüt.
1.2 megnyomod a ''rec'' gombot (mint a videón).
1.3 mentés mehet a tesztmunkafüzetbe.
1.4 csinálsz valami egyszerűt (pl egy cella kiszínezése).
1.5 megnyomod a ''stop'' gombot.
2 megtekintés:
2.1 a ''visual basic'' eszköztáron a ''visual basic editor'' gombra kattintasz.
2.2 az editorban baloldalt a könyvtárszerkezetben a tesztmunkafüzet alatt van ''modulok''. erre duplán kattintva jobb oldalon megjelenik a program, amit csináltál.
2.3 ha megnézed nem vészes (persze little english jól jön), kijelöli a cellát, majd a kijelölésen hajtja végre a műveletet.
2.4 az 1.1-2.3 lépéseket ismételve lehet nézkélődni, hogy milyen általad csinált dolgot hogyan rögzít. a leggyakrabban a kijelölt (selection) résszel foglalkozik.
3 továbbá
célszerű aktiválni az ''immediate window''-ot az editor ''view'' menüjében. az immediate ''azonnali'', egyszerű dolgokat helyben megcsinál. ha kérdezni szeretnél, csak rakj minden elé ?-et. pl. ?now kiadja az aktuális időt. hát nem tündéri?
a cellákat a makró általában vmi fix hivatkozással írja bele a programba. ezt én nem szeressem. sztem egyszerűbb ez:
cells(<sor>,<oszlop>).select ez kijelöli a megadott cellát.
cells(1,1).select ez pl. kijelöli az A1 cellát.
range(cells(1,1),cells(2,2)).Select a range használatával csak két végpontot kell megadni (a kijelölés itt A1:B2 lesz)
ezzel már jól lehet jelölgetni. ofkorsz a fentieket lehet próbálgatni az ''immediate'' ablakban, ezekhez nem kell ''?''.
a kijelölt részekkel nem sokra megyünk, ha sok cellán akarjuk ismételni a műveletet (pl. #321). persze néha elég az elején a kijelölt területet átírni (nem harap) de nem mindig. csinálhatunk ciklust (kicsit brute-force de legalább egyszerű). erre nagyon jók a cell hivatkozások. egy alap ciklus:
for i = 1 to 256
'legyen i betű amit használunk és egytől 256-ig vegyen fel egyesével növekvő értéket. 256 az oszlopok száma, tehát egy egész sor.
cells(1,i).select
'mindig kiválasztja i oszlop első sorát.
Selection.FormatConditions.Add Type:=xlCellValue, Operator:=xlBetween, _
Formula1:=''0'', Formula2:=''1''
Selection.FormatConditions(1).Font.ColorIndex = 6
'fenti két (három...) sorban egy feltételes formázást rögzítettem korábban. ha a cella értéke 0 és 1 között van, legyen sárga a cella. nem is fontos tudni, mi van odaírva, ha rögzítéssel (''rec'') csináltad tuti jó lesz.
next i
'utolsó sor, ez mondja meg a ciklusnak, hogy eddig tartott és most kezdje a mókát újra a következő i értékkel. i helyett (szinte) bármit használhatsz.
ha a fentieket bemásolod az immediate-be, akkor ha minden igaz egyből műxik is. persze itt a példában használt formázás mindig az aktuális cellára vonatkozik, de lehetne ilyen is:
Selection.FormatConditions.Add Type:=xlExpression, Formula1:=''=$A$2=4''
Selection.FormatConditions(1).Font.ColorIndex = 6
a fenti azt eredményezi, hogy ha az A2 cella értéke 4 lesz, akkor a formázott (bármelyik) cella besárgul. persze ezt is rögzítettem, a rák se tud ilyeneket kívülről.
sztem aki már képes arra, hogy a gyakran használt képleteit ne varázslóval rakja be csak beírja, annak fél órás munka a fentiek megértése és utána csak használni kell, jön magától. remélem mindent korrektül írtam és pár ember kedvet kap hozzá.
Új hozzászólás Aktív témák
- Milyen TV-t vegyek?
- Nem kilincselhet tovább a Tesla Kínában
- Horgász topik
- OnePlus 15 - van plusz energia
- Samsung Galaxy S25 Ultra - titán keret, acélos teljesítmény
- Mibe tegyem a megtakarításaimat?
- Milyen légkondit a lakásba?
- Lakáshitel, lakásvásárlás
- PROHARDVER! feedback: bugok, problémák, ötletek
- Cyberpunk 2077
- További aktív témák...
- Vírusirtó, Antivirus, VPN kulcsok GARANCIÁVAL!
- Eredeti Microsoft termékek - MEGA Akciók! Windows, Office Pro Plus, Project Pro, Visio Pro stb.
- Eladó Steam kulcsok kedvező áron!
- Bitdefender Total Security 3év/3eszköz! - Tökéletes védelem, Most Ünnepi áron! :)
- Számlás!Steam,EA,Epic és egyébb játékok Pc-re vagy XBox!
- Akciós Windows 10 pro + Office 2019 professional plus csomag AZONNALI SZÁLLÍTÁS
- iPhone 12 64GB 100% (1év Garancia)
- Lenovo L13 Core I3-10110U / 8GB DDR4 / LAPTOP 1
- 159 - Lenovo LOQ (15APH8) - AMD Ryzen 7 7840HS, RTX 4060 (ELKELT)
- BESZÁMÍTÁS! MSI B450M R5 5600X 16GB DDR4 512GB SSD RX 7700 XT 12GB Lian Li Lancool 217 fehér CM 700W
Állásajánlatok
Cég: Laptopszaki Kft.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Fferi50

