Hirdetés
- TCL LCD és LED TV-k
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- Projektor topic
- Milyen videókártyát?
- Google Chromecast topic
- Picit gazdaságosabb és halkabb lett a PlayStation 5 Pro legfrissebb verziója
- Új versenyző áll rajtvonalhoz a tápok világában
- Azonnali alaplapos kérdések órája
- Gigabyte alaplap topik
- Úgy állhat le a 16 GB-os GeForce RTX 5060 Ti gyártása, hogy közben nem áll le
-
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
-
válasz
Fferi50
#52972
üzenetére
Úgyis régen makróztam, kedvem szottyant kicsit nosztalgiázni ezen a késői órán, szabályokat meg úgy értelmeztem, ahogy korábban.

Ha másra nem is lesz jó, páran talán találnak benne hasznosítható dolgokat...
Module1-be
Option Explicit'Fire/SOUL/CD - 2024Public Function Fire_dm1970_FX(MyCell As Range) As String'elválasztó karakter (itt szóköz), ezzel vannak elválasztva a szavak a cellá(k)banConst MYDELIMITER = " "'szöveg típusú dinamikus tömbDim MyStringArray() As String'színek deklarálása tömbben (bármennyi lehet)Dim MyColors() As VariantMyColors() = Array("FEHÉR", "KÉK", "ZÖLD", "PIROS", "FEKETE", "HUPIKÉK")'ciklusszámlálóDim i As Long'az Ubound fx értékét ebben tároljukDim MyColorIndex As Long'SPLIT függvény segítségével, a MYDELIMITER paraméterrel tömböt hozunk létreMyStringArray = Split(MyCell.Value, MYDELIMITER)'végignézzük a tömb elemeit (szavakat a cellában, ami bármennyi lehet)For i = 0 To UBound(MyStringArray)'a tömb 0. eleme (első szó a cellában) egy deklarált szín?'ha igen, akkor a színt adjuk vissza és kilépünk a függvénybőlMyColorIndex = UBound(Filter(MyColors, MyStringArray(0), , vbTextCompare))If MyColorIndex > -1 ThenFire_dm1970_FX = UCase(MyStringArray(0))Exit FunctionEnd If'a tömb utolsó eleme (utolsó szó a cellában) egy deklarált szín?'ha igen, akkor a színt adjuk vissza és kilépünk a függvénybőlMyColorIndex = UBound(Filter(MyColors, MyStringArray(UBound(MyStringArray)), , vbTextCompare))If MyColorIndex > -1 ThenFire_dm1970_FX = UCase(MyStringArray(UBound(MyStringArray)))Exit FunctionEnd If'a tömb i-edik eleme egy deklarált szín?'ha igen, akkor az i+1-dik elemet (cellában első megtalált deklarált színt követő szót) adjuk vissza és kilépünk a függvénybőlMyColorIndex = UBound(Filter(MyColors, MyStringArray(i), , vbTextCompare))If MyColorIndex > -1 ThenFire_dm1970_FX = UCase(MyStringArray(i + 1))Exit FunctionEnd If'ha nem találtunk a cellában deklarált színt, akkor töröljük a cella tartalmátFire_dm1970_FX = ""Next iEnd Function
Új hozzászólás Aktív témák
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: Laptopszaki Kft.
Város: Budapest




