Scholieren.com forum

Scholieren.com forum (https://forum.scholieren.com/index.php)
-   Software & Hardware (https://forum.scholieren.com/forumdisplay.php?f=20)
-   -   [Windows] Excel formule (https://forum.scholieren.com/showthread.php?t=174872)

Compugreen 02-08-2002 10:40

Excel formule
 
Als in een vakje A1 vb staat: ABC
hoe kan ik dan met een formule in een ander vakje CBA krijgen?
(omgekeerde volgorde van de tekens?)

groetjes
hartelijk dank op voorhand

dumpie 02-08-2002 13:03

Hmmm, moeilijke vraag.
Kun je niet zoiets doen als:

(A2) =getTotal(A1) * rnd(A1)

Is maar een tip hoor.
Niet getest :).

Veel succes verder,
J.

Compugreen 02-08-2002 14:02

wat is rnd?

dumpie 02-08-2002 14:09

random

oftewel: een willekeurig getal/letter en dat pakt die dus uit die cel.

:) J.

eddie 02-08-2002 14:37

Citaat:

Compugreen schreef:
Als in een vakje A1 vb staat: ABC
hoe kan ik dan met een formule in een ander vakje CBA krijgen?
(omgekeerde volgorde van de tekens?)

groetjes
hartelijk dank op voorhand

reverse?

A2=REVERSE(A1)


[edit]
nee...
[/edit]

Aegishjalmur 03-08-2002 00:49

ik denk dat het het makkelijkst is, om even in eigen functie te schrijven in VBA (Visual basic for Applications)

om dit te doen:

- open VBA-window door in excel op Alt-F11 te drukken
- kies: invoegen -> module
- voer in de module de volgende function in:

Code:

Function RevChar(s As Variant) As Variant
    Dim ret As String          ' definieren var voor bijhouden ret-waarde
    Dim i As Integer            ' teller-variabele
   
    ret = ""                    ' waarde ret initialiseren
   
    For i = 1 To Len(s)
        ret = ret + Right(s, 1) ' de rechtse char van de inputwaarde nemen
                                '    en toevoegen aan ret
        s = Left(s, Len(s) - 1) ' het rechtse char van de inputstring afhalen
    Next i
   
    RevChar = ret              ' waarde retourneren
End Function

nu kun je in excel gewoon invoeren:
=RevChar(A1)
=RevChar("blaat")
=RevChar(123)
enz...

Compugreen 03-08-2002 09:31

ja da zou gaan, kheb nog een andere opl in de zelfde orde, maar simpeler:


Een mogelijke oplossing bestaat erin om een zelf gedefiniëerde functie te
creëren in Visual Basic for Applications. Maak hiervoor bijvoorbeeld een
Excel bestand Personal.xls. Ga vervolgens met de functietoets Alt+F11 naar
de Visual Basic programmeeromgeving. Indien niet geïnstalleerd dient deze
optie eerst te worden bijgeïnstalleerd. Maak vervolgens een nieuwe module
aan via het menu Insert -> Module (Invoegen -> Module). Kopiëer vervolgens
onderstaande code naar deze module:

Public Function Omkeren(strNormaal)
Omkeren = StrReverse(strNormaal)
End Function

Vervolgens schrijft u het bestand weg als een Microsoft Excel Add-In
(*.xla). De Add-In stelt zelf een directory voor, welke behouden mag
blijven. Vervolgens kunt u via het menu Tools -> Add-In... (Extra ->
Invoegtoepassingen) het zo juist aangemaakte bestand activeren (eventueel
eerst via Browse... opsporen). Hierna is de nieuwe functie bruikbaar voor
elk werkblad. U kunt vervolgns de functie =omkeren("celverwijzing") intypen
of met behulp Paste Function -> User Defined (Functie Plakken -> Eigen
Gedefiniëerde) de aangemaakt functie gebruiken.

P.S.: De Nederlandse vertalingen kunnen niet correct zijn (werk namelijk met
een Engelse versie).
--------------------------------------------------------------------------------

tip:

als je voorgaand uitgevoerd hebt
en in A1 vb zet je= Hallo

en je zet in A2:

=omkeren(Hallo)

dan komt in A2:

ollA

Nu de tip: Wil je de eerste letter in hoofdletter en de rest niet? geef dan de formule als volgt in:

=beginletters(omkeren(a1))

en dan bekom je= Olla

Aegishjalmur 03-08-2002 15:03

Citaat:

Compugreen schreef:
....

Public Function Omkeren(strNormaal)
Omkeren = StrReverse(strNormaal)
End Function

...

in visual basic moet je toch altijd het type aangeven als je een function maakt ??

RenT 03-08-2002 20:04

Citaat:

Aegishjalmur schreef:


in visual basic moet je toch altijd het type aangeven als je een function maakt ??

Nee


Alle tijden zijn GMT +1. Het is nu 23:12.

Powered by vBulletin® Version 3.8.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.