08. juli 2008 - 16:20Der er
1 kommentar og 1 løsning
Summering af konti, array i diminsioner
Hej,
Jeg forsørge at summere nogle beløb jeg har stående i et array (Data). Antallet af konti jeg bruger, er variabel, så det skal være dynamisk. Men kan ikke få det hen. Her er hvad jeg er nået frem til:
Dim AccountArray() As String
CountAccount = 0 For y = 2 To UBound(Data, 1) WRBRT = Data(y, 3) 'beløb NEWKO2 = Data(y, 5) 'konto
For i = LBound(AccountArray) To UBound(AccountArray) If NEWKO2 = AccountArray(i) Then AccountArray(i, 1) = AccountArray(i, 1) + WRBRT Else ReDim Preserve AccountArray(CountAccount) AccountArray(CountAccount) = NEWKO2 AccountArray(CountAccount, 1) = WRBRT CountAccount = CountAccount + 1 Next Next
Skulle nogen være interesseret i min egen løsning, så kommer den her.
Sub Upload() Dim Ting() As String Dim Antal() As String
Sheets("input").Select Data = Range("A1").CurrentRegion Sheets("output").Select
For CounterData = 1 To UBound(Data, 1) Datafindes = False If Len(Join(Ting)) > 0 Then For TingCounter = LBound(Ting) To UBound(Ting) If Data(CounterData, 1) = Ting(TingCounter) Then Datafindes = True End If Next End If
If Datafindes = True Then For TingCounter = LBound(Ting) To UBound(Ting) If Data(CounterData, 1) = Ting(TingCounter) Then Antal(TingCounter) = Antal(TingCounter) + Data(CounterData, 2) End If Next Else ReDim Preserve Ting(CounterData) Ting(CounterData) = Data(CounterData, 1) ReDim Preserve Antal(CounterData) Antal(CounterData) = Data(CounterData, 2) End If
Next
For TingCounter = 1 To UBound(Ting) Cells(TingCounter, 1) = Ting(TingCounter) Cells(TingCounter, 2) = Antal(TingCounter) Next
End Sub
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.