Avatar billede Laugesen1 Mester
22. juli 2014 - 10:52 Der er 1 løsning

Indsæt værdi fra inputbox i array

Jeg har en makro der efter kriterier i tre kolonner kopierer rækker fra et array, for derefter at sætte dem ind i et ark. Det fungerer som det skal.

Men jeg vil gerne lave en lille ændring, så jeg fra en inputbox kan ændre kriterium for dato i makroen.

Jeg har prøvet at ændre linjen med IF-kriterium:
IF  MyArray(x, 4) = "01-06-2014"

Har ændret den til  MyArray(x, 4) = "Dato1"      - Men det virker ikke.


Hvordan indsætter man værdien fra en inputbox i et array ?
Og hvordan sikre jeg, at det bliver med den rigtige dato-formatering ?


På forhånd tak

Laugesen



Koden:

Public Sub KopierFraArray2()
    Dim MyArray As Variant
    Dim NewArray As Variant
    Dim x As Integer
    Dim Y As Integer
    Dim k As Integer
    Dim Dato1 As String

    k = 1

    Dato1 = Application.InputBox("Indtast StartDato", "StartDato")
 
    MyArray = Range("V1000", Range("V1000").End(xlDown).End(xlToRight))


      ReDim NewArray(1 To UBound(MyArray, 1), 1 To UBound(MyArray, 2))
    For x = LBound(MyArray, 1) To UBound(MyArray, 1)


        If MyArray(x, 3) = "Visa/dk" And MyArray(x, 4) = "01-06-2014" And MyArray(x, 7) = "12345" Then
            For Y = LBound(MyArray, 2) To UBound(MyArray, 2)
                NewArray(k, Y) = MyArray(x, Y)
            Next
            k = k + 1
        End If

    Next

    Range("AN79").Resize(UBound(NewArray, 1), UBound(NewArray, 2)) = NewArray
    Set NewArray = Nothing

End Sub
Avatar billede Laugesen1 Mester
16. august 2014 - 21:54 #1
Jeg har selv fundet løsning på problemet.

Værdi fra inputbox kan sættes ind i et array på følgende måde:

Dato1 = Application.InputBox("Indtast StartDato", "StartDato")
Tid1 = Application.InputBox("Indtast StartKlokkeslæt", "StartTid")

If MyArray(x, 4) = Dato1 And MyArray(x, 5) >= Tid1 And MyArray(x, 7) = "12345" Then . . . . . . . . . . .

Laugesen
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester