16. oktober 2003 - 11:37Der er
26 kommentarer og 2 løsninger
Select Hver anden række
Jeg har en kæmpe stort excel regne ark. Jeg skal have markeret hver anden række så jeg kan kopiere dem ind i et nyt regne ark. Så skal jeg markere de andre hver andet række, og kopiperer dem ind i det nye regneark også. På den måde kan jeg få dem til at stå ud for hinanden i hver deres kolonne.
dim i as long For i = 2 to 65536 step 2 Rows(i).EntireRow.Select next i
Men når man selecter en ny række deselecter man automatisk den tidligere markerede række. Kan ikke en metode som "AddToSelectionSet" eller noget i den stil. Anyone?
Når du kopiere formlerne ned vil kolonne a-c indholde alle de ulige rækker og d til f alle de lige. Så skulle det jo efterfølgende være en smal sag at sortere dem på plads.
Hvis du har 3 kolonner med data, kan du i dit opsamlingsark bruge =HVIS(REST(CELLE("række";Ark1!A1);2)=1;Ark1!A1;"") i kolonne a - c og =HVIS(REST(CELLE("række";Ark1!D1);2)=1;Ark1!A2;"") i kolonne d - f Nu vil hver anden række være tom, og de øvrige rækker være som du ønsker.
Det lyder til at du har en engelsk version Dvs. HVIS, REST, CELLE og række skal oversættes ! I hjælp kan du helt sikkert finde IF og CELLS("rows"), men REST ved jeg ikke lig hvad hedder.
Det lyder til at du bruger Autofilter, hvilket skulle være OK, med de nye rettelser.
Det hele står i samme kolonne. DA00 Kolera DA000 Kolera forårsaget af vibrio cholerae (klassisk kolera) DA001 Kolera forårsaget af Vibrio cholerae eltor DA009 Kolera uden specifikation
osv.
så DA00 bliver til ID i første række i første kolonne og Kolera er værdien i første række i anden kolonne
En anden mulighed. Lav en ny kolonne A i dit master ark. Indsæt tæller 1 til mange nedefter. Lav en ny kolonne A i dit opsummerings ark. Indsæt tæller 1 til mange nedefter. I opsummeringsarket indsættes : I B1 : =LOPSLAG(A1+A2-2;Ark1!A1:B15;2;FALSK) og kopieres ned I C1 : =LOPSLAG(A1+A1;Ark1!A1:B15;2;FALSK) og kopieres ned LOPSLAG = LOOKUP i den engelske udgave mener jeg.
zaknafein: Er antall kolonner alltid et partall? Og har jeg forstått det riktig hvis. Først skal alle oddetallkolonner komme, (A,C,E...) deretter skal antall partallkoloner komme (B,D,F...) ? HVIS DET ER TILFELLET, TROR JEG AT JEG HAR EN ENKEL LØSNING SOM JEG SELV BENYTTTER
Jeg vil sige at jeg har gået en lidt anden vej nu...
Jeg importere XML dokumentet i excel. Så kopierer jeg hele den kollonne (hvor hver anden række skal over i en ny) til et tomt excel ark. så gemmer jeg som en tekstfil. Så åbner jeg den txt fil i ASP. tager hver anden linie og skriver ud i en browser. Så kopierer jeg den udskrift fra browser til et nyt excel ark. så skriver jeg de andre - hver anden linie ud til skærmen og viser dem i en browser. Disse nye paster jeg så ind i kolonne 2 på den nye regne ark....
Men nu virker det...
Tak for de mange forslag. OG jeg synes hvertfald martin_moth og aheiss skal ha point....
Jeg svarer også lige. Du kan bruge denne makro i stedet. den er smartere tror jeg.
Hvis dine ark hedder Ark1 og Ark 2 og data ligger i kolonne A og B, så kan du køre makroen.
Sub Flytdata() Dim omrode As Range Dim omrode2 As Range Set omrode = Sheets("ark1").Range("a:b") Set omrode2 = Sheets("ark2").Range("a:b") For a = 1 To 65000 Step 2 If omrode(a, 1) = "" Then GoTo slet Else omrode2(a, 1) = omrode(a, 1) omrode2(a, 2) = omrode(a + 1, 1) End If Next slet: Range("a2").EntireRow.Delete Do cc = ActiveSheet.UsedRange.Rows.Count Range("a1").Select ActiveCell.End(xlDown)(2, 1).Select Selection.EntireRow.Delete Loop Until ActiveCell.Row >= cc End Sub
zaknafein: jeg har et regneark som gjør akkurat det du er ute etter. Hvis du legger igjen din mailadresse. kan jeg sende arket til deg. Du limer da bare dine data inn i arket. Så vil de bli ordnet i to kolonner.
Hehe oyejo ja den virker lidt. men det gør noget underligt....
Den sortere mine data ud i samme nye kolonne. I mine data er hver anden et ID og hver anden et ord.
Så sortere din makron dem sådan her
ord ord ord osv... ID ID ID osv...
og så kommer der igen en masse ord til sidst. Men jeg kunne i det mindste markere en gruppe af gangen ud til en ny kolonne. Så jeg kunne have brugt den :)
zaknafein: Den viker hvis du ikke har overskriftrad, og utgangspunktet er kolonne A. Hvis du starter i Celle A1. slik: ord1 Tall1 ord2 Tall2 ord3 Tall3 ord4 Tall4 Så blir resultatet hos meg: ord1 Tall1 ord2 Tall2 ord3 Tall3 ord4 Tall4
Det kreves også at det ikke er tomme celler i dine data i kollonnen før du begynner. Du må altså starte i Celle A1 og det må være data i alle celler nedover til din siste celle med data. Hvis det ikke er det, er det ikke noe proble å lage en kode som fjerner de tomme cellene
Beklager jeg har glemt å si at det må stå: option base 1 på linjen før public function. slik
Option Explicit
Option Base 1
Så kommer denne linjen
Public Sub EnKolonneTilTo()
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.