Sortering i andet Ark efter ændring af oplysninger!
Hej, eks.
Jeg har nogen kolonner i ark1 hvor man kan indtaste oplysninger disse oplysninger bliver så sendt videre til ark2 som jeg efterfølgende sorter. jeg har ikke noget problem med at sorter dem efter en given rækkefølge. prolemet opstår når jeg ændre oplysningerne i ark1 Ja, de bliver også ændret i ark2, men de bliver ikke sorteret! oplysningerne står bare ændrede i ark2 men der er ikke nogen sortering? hvorfor sorter den ikke automatisk?
I dette særtema om aspekter af AI ser vi på skiftet fra sprogmodeller til AI-agenter, og hvordan virksomheder kan navigere i spændet mellem teknologisk hastighed og behovet for menneskelig kontrol.
Jeg tror ikke helt, jeg er med. Er det fordi referancen ikke længere er den samme efter sorteringen, eller er det fordi at der ikke sorteres efter de nye værdier?
Hvis alle dine referencer er "låst" med $-tegn vil data i Ark2 ikke ændre sig fra data i Ark1. Du kan herefter sætte denne kode ind i Ark2:
Public Sub worksheet_activate() Columns("A:A").Select ActiveWorkbook.Worksheets("Ark2").Sort.SortFields.Clear ActiveWorkbook.Worksheets("Ark2").Sort.SortFields.Add Key:=Range("A1"), _ SortOn:=xlSortOnValues, _ Order:=xlAscending'<--- brug "Order:=xlDescending" hvis data skal starte med højeste værdi i stedet for. With ActiveWorkbook.Worksheets("Ark2").Sort .SetRange Range("A1:C3") '<--- dit dataområde .Apply End With
min fejl! der skal sorteres, men ved ændringer i ark1 skal ændres oplysninger i ark2 selvfølgelig men de sorteres ikke for størst til mindst værdi automatisk det ska man gøre manuelt hver gang via sorter-brugerdefineret osv
er der ikke fuktion hvor de sorteres automatisk, også når værdierne ændre sig?
hmm hvordan skal jeg indsætte koden har prøvet sådan her men det hjælper ik rigtig
Public Sub worksheet_activate() Columns("A:A").Select ActiveWorkbook.Worksheets("1.2 Beregning").Sort.SortFields.Clear ActiveWorkbook.Worksheets("1.2 Beregning").Sort.SortFields.Add Key:=Range("A1") SortOn = xlSortOnValues .Order = xlDescending With ActiveWorkbook.Worksheets("1.2 Beregning").Sort .SetRange Range("B1:k6") ' .Apply End With
Du skal bare sætte koden ind i det ark, som stemmer overens med dit arknavn - i dit tilfælde "1.2 Beregning".
Jeg fandt også nogle småfejl i din kode, som fik det det at fejle. Prøv at kopiere denne kode over i din vba (vær obs på, at der er forskel på punktummer(".") og kommaer(",")):
Public Sub worksheet_activate() Columns("A:A").Select ActiveWorkbook.Worksheets("1.2 Beregning").Sort.SortFields.Clear ActiveWorkbook.Worksheets("1.2 Beregning").Sort.SortFields.Add Key:=Range("A1"), _ SortOn:=xlSortOnValues, _ Order:=xlDescending With ActiveWorkbook.Worksheets("1.2 Beregning").Sort .SetRange Range("B1:K6") ' .Apply End With End Sub
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.