Een Array uit een tabel halen

Status
Niet open voor verdere reacties.

blikbanaan

Gebruiker
Lid geworden
16 feb 2012
Berichten
66
Beste allemaal is het mogelijk om de arraynamen vanuit een tabel in te lezen en niet zoals het voorbeeld vast in de array zelf te zetten.

Zie voorbeeld in bijlage, en nogmaals mijn excuses
 

Bijlagen

  • Array.txt
    820 bytes · Weergaven: 39
Laatst bewerkt:
Al 9 jaar op het forum en nog geen code tags gebruiken ?

Hoe weet jij dat helpmij alleen meer herenbezoek kent ?
 
En dan ook nog eens nodeloos quoten.... Begin eens met je code alsnog in Code tags te zetten :).
 
Dat tekst bestandje hebben we ook niks aan.
Dat wordt niet bedoelt met codetags.
Tevens is die code nogal rommelig.
Plaats gewoon een voorbeeld Excel document.
 
En dan een met Alle code, want zo te zien gebruik je een extra procedure die je aanroept. Die moet er dus ook bij zitten. En uiteraard voldoende gegegens om de vraag te kunnen beoordelen.
 
Vervang
Code:
    myarray = Array("LeoSoft", "BJJ480", "DCJ137", "SL6060", "BX5307", "BCC202", "FGI241", "DAH213", "MS5960", "CGC471")
    aantal = 0
    For i = 0 To UBound(myarray)
        If Environ("username") = myarray(i) Then aantal = aantal + 1
    Next
Door
Code:
    myarray = Blad1.Cells(1).CurrentRegion.Rows(1)
    aantal = 0
    For i = LBound(myarray, 2) To UBound(myarray, 2)
        If Environ("username") = myarray(1, i) Then aantal = aantal + 1
    Next
Ervanuitgaande dat jouw titels/headers op blad 1 in de eerste rij staan.
 
Laatst bewerkt:
Dan nog: een teller gebruiken (aantal-aantal+1) voor iets wat hooguit en maximaal de waarde 1 of 0 oplevert? Onzinnig. Net als If aantal < 1. Aantal begint op 0, wordt nooit kleiner en dus ook nooit groter dan 1. Ergo: aantal = 0 of aantal = 1.
 
Getest, krijg hem niet aan het werken, heb een bijlage er bij gedaan
 

Bijlagen

  • Usernamen_test.xlsm
    16,3 KB · Weergaven: 42
Je hebt de laatste regel van alphamax in #7 niet gelezen.

Daarnaast zou ik dat hele stukje zo doen:
Code:
Private Sub Workbook_Open()
    Application.Caption = ActiveWorkbook.Path
    ActiveWindow.Caption = "Auteur Leo Abraas, Calculatie OBS.xlsb"
    
    If WorksheetFunction.Match(Environ("username"), Blad1.Range("A:A")) > 0 Then
        ZichtbaarSheet
        Application.DisplayAlerts = True
        Application.Goto Sheets("Recept").Range("AA9")
    Else
        Application.DisplayAlerts = False
        ActiveWorkbook.Close
    End If
End Sub
 
Laatst bewerkt:
Gebruikersnamen zijn over het algemeen uniek.

Dus kan je zonder lusje application.match gebruiken.
 
Bedankt voor de hulp allemaal ik ben hier goed mee geholpen, nu kan ik de usernamen gewoon in een blad aanvullen en hoef ik niet meer in de code dit staats te wijzigen.


Prettige avond
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan