10. april 2008 - 21:18
Der er
3 kommentarer og 1 løsning
Afslut løkke
Hej, Jeg mener ikke det er optimalt hva jeg har fået lavet her. Det virker, men gennemløbstiden er alt for høj. Private Function CalcRate(BghtCur, SoldCur) Sheets("Kurs").Select Data = Range("A1").CurrentRegion For y = 1 To UBound(Data, 1) If BghtCur = Data(y, 1) Then Bght = Data(y, 2) End If Next For y = 1 To UBound(Data, 1) If SoldCur = Data(y, 1) Then Sold = Data(y, 2) End If Next CalcRate = Sold / Bght Exit Function End Function Den vil jo selv efter den har fundet en valuta teste resterende mulig valuta igennem om det er lige med. Rigtig forstået ikke?
Annonceindlæg tema
Forsvar & beredskab
Cybersikkerhed, realtidsdata og robuste it-systemer er blevet fundamentet for moderne forsvar.
10. april 2008 - 21:24
#1
Private Function CalcRate(BghtCur, SoldCur) Sheets("Kurs").Select Data = Range("A1").CurrentRegion For y = 1 To UBound(Data, 1) If BghtCur = Data(y, 1) Then Bght = Data(y, 2) exit For End If Next For y = 1 To UBound(Data, 1) If SoldCur = Data(y, 1) Then Sold = Data(y, 2) exit For End If Next CalcRate = Sold / Bght Exit Function End Function
11. april 2008 - 08:18
#2
Tak for svar. Simpelt, er det virkelig bare exit For. Virker efter hensigten.
11. april 2008 - 08:23
#3
et svar ;-)) de 2 øverste linjer, kan samles til 1 Data = Sheets("Kurs").Range("A1").CurrentRegion
11. april 2008 - 08:28
#4
Skønt, ekstra tak :)
Kurser inden for grundlæggende programmering