Avatar billede banazmi Nybegynder
12. januar 2005 - 13:13 Der er 12 kommentarer og
1 løsning

kode til vælge af området, med henblik på lave sortering

Jeg får et udtræk fra et andet program til excel, hvor jeg har fast andtal koloner men med variernde antal rækker.
Jeg har brug for en kode som kan vælge området starter fra A8 og til den række hvor den møder første gang tomme celle i kolon A.

Så skal dataen i valgt område sorteres i afabetisk orden i kolon A.

og i samme opgave har jeg brug for en kode som åbner en fil men den skal første kontrolere om filen allrede er åbne, så skal den ikke åbnes.
Avatar billede jmeincke Nybegynder
12. januar 2005 - 13:25 #1
Sub sortera()
   
    Range("A8:I8").Select
    Range(Selection, Selection.End(xlDown)).Select
    ActiveWindow.SmallScroll Down:=-27
    Selection.Sort Key1:=Range("A8"), Order1:=xlAscending, Header:=xlGuess, _
        OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
        DataOption1:=xlSortNormal
End Sub

Her er en meget simpel kode til dit første problem. Hvis du skal bruge flere kolonner end til I så ændrer du blot det i koden. Koden forudsætter at der ikke kommer flere tal ind efter den sidste. Excel er ligeglad med at man har taget for mange celler med
Avatar billede jmeincke Nybegynder
12. januar 2005 - 13:27 #2
Er det en fast fil der skal åbnes?
Avatar billede banazmi Nybegynder
12. januar 2005 - 13:33 #3
Sådan som skriver f.eks. området vælges 27 rækker ned fra række 8, sker jo det at hvis der er data kun i 10 rækker, så kommer 17 tommer rækker første på "rækken" når man sortere i alfabetisk orden.
Avatar billede jmeincke Nybegynder
12. januar 2005 - 13:36 #4
Nej - i den kode så tager den ikke de tomme med... Har du testet den?
Avatar billede jmeincke Nybegynder
12. januar 2005 - 13:39 #5
Sub Åbn_fil
      Workbooks.Open Filename:="C:\regneark\" & filnavn & ".xls"
End Sub

Jeg ved ikke hvordan man kontrollerer det
Avatar billede banazmi Nybegynder
12. januar 2005 - 13:55 #6
Range("A8:u8").Select
    Range(Selection, Selection.End(xlDown)).Select
    ActiveWindow.SmallScroll Down:=-80

' Den kører hertil, resten bliver gult og makroen stopper.

    Selection.Sort Key1:=Range("A8"), Order1:=xlAscending, Header:=xlGuess, _
        OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
        DataOption1:=xlSortNormal
Avatar billede jmeincke Nybegynder
12. januar 2005 - 14:10 #7
Den virker upåklageligt hos mig...

Jeg har kopieret den ind her fra. Det er vigtigt at excel ikke har skåret den på det forkerte sted
Avatar billede jmeincke Nybegynder
12. januar 2005 - 14:13 #8
Sub sorter

    Range("A8:U8").Select
    Range(Selection, Selection.End(xlDown)).Select
    Selection.Sort Key1:=Range("A8"), Order1:=xlAscending, Header:=xlGuess, _
        OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
        DataOption1:=xlSortNormal
End Sub

Her er den fra a til u - prøv den
Avatar billede banazmi Nybegynder
12. januar 2005 - 14:30 #9
Det eneste der sker er at dataområdet bliver valgt, og så stopper den.
Avatar billede svla Mester
16. januar 2005 - 20:00 #10
Jeg er lidt ny i VBA, men prøv denne her, den har jeg selv lavet den, og den fungerer fint!
-Jeg se du har fået forslag til hvordan du finder en fil.

Sub SorterIndsatteRækker()
  Const A = "A"
  Dim sCelle As String
 
    Range("A7").Select
    sCelle = ActiveCell.Row
 
  Do
    sCelle = sCelle + 1
    Range(A & sCelle).Select
  Loop Until ActiveCell = ""
 
    Rows("8:" & sCelle).Select
    Selection.Sort Key1:=Range("A8"), Order1:=xlAscending, Header:=xlGuess, _
        OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
        DataOption1:=xlSortNormal
    Range("A8").Select
    MsgBox "Der var " & sCelle - 8 & " rækker indsat, og de er sorteret stigende !", vbInformation, "Indsatte rækker..."

End Sub
Avatar billede banazmi Nybegynder
25. januar 2005 - 09:21 #11
Jeg væk i en periode.
Din løsning virkede. Tak for hjælpen.
Jeg mangler stadig koden til at åbne filen, hvor der skal første tjekes om filen allerede er åbne, og hvis det er åbnet, så skal der ikke ånes.
Avatar billede jmeincke Nybegynder
25. januar 2005 - 09:23 #12
Hej

Hvis du åbner en fil som allerede er åbnet - så får du vel en fejl og det afgør om den er eller ikke er åben. Men det er jo selvfølgelig ikke fuldautomatiseret.
Avatar billede svla Mester
30. januar 2005 - 19:55 #13
Hej
Det med koden til og åben en fil har du fået forslag til, hvordan man tjekker om den allere er åben, kan jeg ihvertfald ikke finde ud af.
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
Vi har et stort udvalg af Excel kurser. Find lige det kursus der passer dig lige her.

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