Function xFind(Værdi As String) Dim v, x Application.Volatile For v = 9 To 14 If Cells(v, 2).Value = Værdi Then xFind = "TRUE": GoTo ud End If Next xFind = "FALSE" ud: End Function
Troede ikke jeg fik svar samme dag, da tidspunktet var lidt fremskredent :0)
excelent din funktion gør det den skal, så læg et svar. Jeg har dog ændret lidt på den, da der nok manglede en beskrivelse af hvor (og hvordan) jeg bruger funktionen.
Jeg skal bruge den returnerede værdi (TRUE/FALSE) i en anden VBA funktion, hvor jeg med en If/Then tester værdien. Tekststrengen der testes på er altid "A".
Jeg har kigget lidt på funktionen og ændret den. Her er hvad jeg er kommet frem til, som virker:
Public Function xFind() As Boolean Dim v, x Application.Volatile
For v = 9 To 14 If Cells(v, 3).Value = "A" Then xFind = True: GoTo ud End If Next xFind = False ud: End Function
Hvis lysten er der, er her lige et tillægsspørgsmål, som jeg nok skal honorere med yderligere point.
Hvordan ville funktionen ovenfor se ud, hvis jeg fra en celle kaldte den sådan:
=xFind(B9:B14)
Alle andre forudsætninger som i mit oprindelige spørgsmål.
Jeg mener, at jeg her på eksperten på et tidspunkt har set et spørgsmål hvor et område af celler skulle hentes ind i en funktion/sub (som ovenfor) og behandles, men jeg har ikke kunnet finde spørgsmålet igen.
Public Function yFind(myRange As Range) As Boolean Dim v Application.Volatile For Each v In myRange If v = "A" Then yFind = True: GoTo ud Next yFind = False ud: End Function
'--------- eller ------------------------------------- =zFind(B9:B14;"A")
Public Function zFind(myRange As Range, Værdi) As Boolean Dim v Application.Volatile For Each v In myRange If v = Værdi Then zFind = True: GoTo ud Next zFind = False ud: End Function
Public Function fundet(område As Range, streng As String) As Boolean ræk = område.Rows.Count kol = område.Columns.Count For I = 1 To kol For J = 1 To ræk værdi = værdi & område.Cells(J, I) If InStr(værdi, streng) Then fundet = True Exit Function Else fundet = False End If Next J Next I End Function
Bare glem det. Jeg havde ikke læst ordentligt efter. Troede det skulle være en del af en tekststreng, men den har kabbak jo allerede foreslået. Excellents virker fint.
excellent Også din 2. funktion virker fint. Jeg opretter et spørgsmål med yderligere point til dig
mrjh & kabbak I skal have tak for jeres input også - det er ikke umuligt, at jeg kan bruge jeres forslag i et fremtidigt projekt!
Der er jo altid en eller anden ide der pusler i baghovedet!
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.