Avatar billede kim_bording Nybegynder
14. marts 2003 - 14:58 Der er 8 kommentarer

Sorter en Aktiv-X tabel ved brug af VBscript

En Aktiv-X tabel skal sorteres således at når der trykkes på en knap "Sorter" sorteres tabelen efter "% fejl". Håber der er en der vil hjælpe mig med koden.

      A        B          C          D          E
1    Type      Fejl  Omk.pr.stk.    Total      % Fejl
2    A        68        273        18564      36,36
3    B        72        167        12024      23,55
4    C        18        510        9180      17,98
5    D        34        102        3468        6,79
6    E        42        82        3444        6,75
7    F        16        110        1760        3,45
8    G          3        328          984        1,93
9    H          3        227          681        1,33

Fejlene for type A falder til 3 stk. og "% fejl" til 2,46

      A        B          C          D          E
1    Type      Fejl  Omk.pr.stk.    Total      % Fejl
2    A        3          273        819        2,46

Tabellen sorteres på "% fejl" ved at trykke på knappen sorter. Tabellen kommer nu til at se ud som nedenstående tabel.


      A        B          C          D          E
1    Type      Fejl  Omk.pr.stk.    Total      % Fejl
2    B        72        167        12024      36,10
3    C        18        510        9180      27,56
4    D        34        102        3468      10,41
5    E        42        82        3444      10,34
6    F        16        110        1760        5,28
7    G          3        328          984        2,95
8    A          3        273          819        2,46
9    H          3        227          681        2,04
Avatar billede medions Nybegynder
14. marts 2003 - 15:00 #1
Hvis du ligger dine data ind i et Array, kan du sortere Arrayet...

//>Rune
Avatar billede medions Nybegynder
14. marts 2003 - 15:10 #2
Fx.

Function ShellSort(vArray)
Dim TempVal
Dim i, GapSize, CurPos
Dim FirstRow, LastRow, NumRows
FirstRow = LBound(vArray)
LastRow = UBound(vArray)
NumRows = LastRow - FirstRow + 1
Do
  GapSize = GapSize * 3 + 1
Loop Until GapSize > NumRows
Do
  GapSize = GapSize \ 3
  For i = (GapSize + FirstRow) To LastRow
  CurPos = i
  TempVal = vArray(i)
  Do While CompareResult(vArray(CurPos - GapSize),TempVal)
    vArray(CurPos) = vArray(CurPos - GapSize)
    CurPos = CurPos - GapSize
    If (CurPos - GapSize) < FirstRow Then Exit Do
  Loop
  vArray(CurPos) = TempVal
  Next
Loop Until GapSize = 1
End Function

Function CompareResult(Value1, Value2)
CompareResult = (Value1 > Value2)
End Function

'Eksempel...
Dim Data(4)
Data(0) = "Yep"
Data(1) = "Øhh"
Data(2) = "Tjooo"
Data(3) = "Yep, det skal nok passe"
Data(4) = "Hmm.."

ShellSort Data

For I = 0 to UBound(Data)
  Response.Write Data(i) & "<br>"
Next

//>Rune
Avatar billede kim_bording Nybegynder
14. marts 2003 - 17:14 #3
Jeg er ikke helt klar over, hvad du mener med at ligge dataerne ind i et Array. De ligger i et Aktive-X skema i form af et Microsoft Office regne-ark, der styrer 2 office diagrammer. Jeg forventede, at jeg skulle starte med en OnClick knap
Avatar billede medions Nybegynder
14. marts 2003 - 19:02 #4
Well, prøv at se om du kan få dataerne ud i en komasespereret variabel, og så brug funktionen Split() til at lægge dem ned i et Array.. Og brug så dette:

http://www.netsrac.dk/netsrac-dk/asp0001.asp

til at sortere Arrayet med....

//>Rune
Avatar billede kim_bording Nybegynder
16. marts 2003 - 16:27 #5
Jeg er desværre kun arbejdet med VBScript i en måneds tid, så jeg er desværre ikke i stand til, at finde ud af hvordan jeg får daterne ud i en kommasesperet fil. Jeg havde nu også forventet, at det var rimeligt simpelt, da der ved manuel betjening kun skal trykkes på sorter fra Å-A og vælges den kollonne der skal soreres ud fra. Det samme kan gøres ved brug af markro, derfor havde jeg forventet at det samme også ville kunne gøres ved brug af en knap i VBScript.
Jeg håber at få en brugbar løsning, da jeg har brug for det i mit projekt.
Avatar billede medions Nybegynder
16. marts 2003 - 16:55 #6
Hmm har du et link til dokumentationen af din ActiveX komponent?

//>Rune
Avatar billede kim_bording Nybegynder
18. marts 2003 - 08:50 #7
For det første må du undskylde den lange svartid. Jeg har spekuleret
på, hvordan jeg kan sende en fil med mit program på. Det første er, at du opgiver en adresse, hvortil jeg kan sende en diskette med programmet på (evt. en forening eller lignende). Den anden mulighed er, at jeg skriver mit mobilnummer, at du sender mig en E-mail med en adresse, hvortil jeg kan sende disketten. Den tredje mulighed er at skrive hele programmet ved brug af eksperten. Jeg siger på forhånd tak for din hjælp.
Avatar billede medions Nybegynder
18. marts 2003 - 12:19 #8
Du kan sende det til rune@medions.dk :-)
-husk at pak det så det er en .zip fil! -der er mange mailservere ikke acceptere .vbs filer osv.!

//>Rune
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
Kategori
Kurser inden for grundlæggende programmering

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