Kezdőoldal » Számítástechnika » Programozás » Hogyan tudom VBA-ban megadni...

Hogyan tudom VBA-ban megadni egy nem ismert cellakoordinátákkal rendelkező cella formázását; A Range () használható-e úgy, hogy konkrét koordináták helyett, képlettel adjuk meg a koordinátákat?

Figyelt kérdés

Nem igazán sikerült értelmesen megfogalmaznom a kínomat, de talán ha kifejtem.


- Adott a "Munka1" munkalapon egy adatbekérő lap, amelyen 10 db különböző adatot lehet megadni.

- Van egy makró a megadott adatokat gombnyomásra átviszi/rögzíti a "Munka2" munkalap következő üres sorában lévő egymás melletti cellákba.


- A "Munka2" lap 6. (K) oszlopának adott celláját annak függvényében szeretném formázni, hogy milyen adat került bele rögzítésre.

A formázást a Range() segítségével oldanám meg, de ehhez tudni kellene a formázandó cella pontos koordinátáját. Én viszont csak az oszlopát tudom.


Van arra mód, hogy a standard Range("K10") helyett valamilyen képlettel adjam meg a formázandó cella koordinátáját?

Valami ilyesmire gondolok:

Range(oszlopszámképlet, sorszámképlet)


pl. ha a cellába írt adatot szeretném vastagítani.

Range(oszlopszámképlet, sorszámképlet).Font.Bold = False


Hasonlóan ahhoz a hivatkozáshoz, mint amikor adatokat helyezünk el egy táblázat bizonyos celláiba.



#VBA makró #Range() osztály #cellakoordináták képlettel
2019. dec. 4. 09:50
 1/3 anonim ***** válasza:
Már rég tanultam, de sokszor az volt a megoldás, ha előbb csinálsz egy másodlagos adatbázist a nyers anyagból, majd ezt és az elsődleges adatbázist felhasználva tudsz adatokat rendezni.
2019. dec. 4. 10:34
Hasznos számodra ez a válasz?
 2/3 A kérdező kommentje:

Köszönöm a hozzászólásodat, de szerintem nem az én kérdésemre válaszoltál. :)


Nem az adatok rendezésével akadtak problémáim.

Úgy szeretném formázni egy cella tartalmát, hogy csak képlettel tudom kijelölni a cella koordinátáit.

Azt viszont sajnos nem tudom, hogy a Range()-ben milyen módon lehet megadni a képleteket, vagy hogy a Range() helyett mi mást használhatnék.


Próbáltam képletekkel, az alábbiak szerint megadni a Range()-t, de erre is "Az objektum tartománya nem megfelelő." hibát dobott.


Range(Cells(Ujsor, 11)).Font.Bold = False

2019. dec. 4. 10:42
 3/3 A kérdező kommentje:

Kis utánaolvasás után az alábbiakra jutottam. Megosztom, talán másnak is segít hasonló problémában.


Range("K" & UjSor).Font.Bold = False


Ahol -esetenben- az:

- UjSor egy olyan változó, ami a betiveli formot tartalmazó munkalap első üres sorát mutatja, ahova az új adatbevitel történhet,

- a "K" pedig a ugyanazon munkalap K oszlopát jelöli.

2019. dec. 4. 14:37

Kapcsolódó kérdések:





Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!