09. april 2011 - 17:06Der er
2 kommentarer og 1 løsning
Combobox dato format ændre sig
Hej
Jeg har lavet en UserForm, hvor i jeg har en Combobox. Mit problem er at jeg fylder Comboboxen med dato-værdier i DK format (dd-mm-åååå), men når jeg bruger Comboboxen i userformen har datoværdierne lige pludselig ændre format i UK (mm-dd-åååå). kan jeg komme uden om dette?
Den løsning har jeg forsøgt tidligere, men det er tilsyneladende ikke muligt at formatere et array på den måde.
tilgengæld har jeg løst problemet således:
Nogle gange gør man VBA mere indviklet end det er :-)
Dim DatoRng As Range Dim VXBol As Boolean
Dim DatoArray() As Variant Dim UniqueDatoArray() As Variant
Set DatoRng = Range(ThisWorkbook.Worksheets("EditPlan").Range("C2"), ThisWorkbook.Worksheets("EditPlan").Range("C65000").End(xlUp))
UniqueX = 0
DatoArray = DatoRng.Value
For i = 1 To UBound(DatoArray)
ReDim Preserve UniqueDatoArray(UniqueX)
VXBol = False
For v = 0 To UBound(UniqueDatoArray)
If UniqueDatoArray(v) = DatoArray(i, 1) Then VXBol = True End If
Next
If VXBol = False Then
UniqueDatoArray(UniqueX) = DatoArray(i, 1) UniqueX = UniqueX + 1 End If
Next
'Sort array
For lLoop = 0 To UBound(UniqueDatoArray)
For lLoop2 = lLoop To UBound(UniqueDatoArray)
If UniqueDatoArray(lLoop2) < UniqueDatoArray(lLoop) Then
str1 = UniqueDatoArray(lLoop)
str2 = UniqueDatoArray(lLoop2)
UniqueDatoArray(lLoop) = Format(str2, "dd-mm-yyyy") 'her var fejlen!!
UniqueDatoArray(lLoop2) = Format(str1, "dd-mm-yyyy") 'Her var fejlen!!
End If
Next lLoop2
Next lLoop
ComboBox1.Clear ComboBox1.List = UniqueDatoArray
Men det er stadig underligt at den ændre formateringen uden den får besked på det...
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.