/ Forside/ Teknologi / Administrative / MS-Office / Spørgsmål
Login
Glemt dit kodeord?
Brugernavn 

Kodeord  


Reklame
Top 10 brugere
MS-Office
#NavnPoint
sion 18609
refi 14474
Klaudi 8489
Rosco40 5695
berpox 5456
dk 5398
Benjamin... 4870
webnoob 4747
o.v.n. 4637
10  EXTERMINA.. 4373
Flytte celler med loop i VBA
Fra : Krogh_Jensen
Vist : 407 gange
55 point
Dato : 03-06-10 13:58

Hej!

ER der nogen der kan hjælpe mig med at lavet et loop der kan klare følgende:

Sheet1 har en liste med personer, hvor kollonne A er deres fornavn, B er deres efternavn, C er deres skole og D er deres oprindelsesland. Listen har ca. 150 personer (række 1 til 150)

Jeg skal bruge et loop der kan kopiere navnene til sheet2, så de står anderledes! fornavn i a1, efternavn i a2, skole i a3 og oprindelsesland i a4. Herefter en blank celle, og så skal den næste person skrives ind ligeså. Det skulle gerne resultere i at alle 150 personers informationer nu befinder sig i kolonne a på ark 2, med én celles mellemrum mellem hver person.

Nogen der kan hjælpe med en færdig kode?

MVH P.

 
 
Kommentar
Fra : Benjamin.Hansen


Dato : 03-06-10 17:27

Kopier alle celler alle med markering til ark 2.

Marker en kolonne ad gangen og placer denne hvor du ønsker det....

Jeg kan ikke lige se du har behov for programering.
Vb Ben

Kommentar
Fra : Krogh_Jensen


Dato : 04-06-10 06:43

Undskyld! Belager! Der er en fejl: Destinationer i ark 1 er: fornavn: a1, efternavn: b1, skole: a2, oprindelsesland: a4 osv.

SÅDAN SER DET UD PÅ SHEET1:

Anders   And    Andeby   Folkeskolen   
Mickey    Mouse   Andeby   Folkeskolen   
Georg    Gearløs   Andeby   Universitet   
            

SÅDAN SKAL DET SE UD PÅ SHEET2:            
            
Anders    And         
Andeby            
Folkeskolen            
            
Mickey   Mouse         
Andeby            
Folkeskolen            
            
Georg    Gearløs         
Andeby            
Universitet            



Osv. osv. for 150 personer?

Kan nogen hjælpe?


Accepteret svar
Fra : sion

Modtaget 55 point
Dato : 04-06-10 10:09

Det kan naturligvis sagtens laves i VBA, men her har du en formel, der kan bruges:

=IF((((ROW()+3)/4)-INT((ROW()+3)/4))*4=0;INDIRECT(ADDRESS(INT((ROW()+3)/4);COLUMN();;;"Sheet1"));IF(AND((((ROW()+3)/4)-INT((ROW()+3)/4))*4=1;COLUMN()=1);INDIRECT(ADDRESS(INT((ROW()+3)/4);3;;;"Sheet1"));IF(AND((((ROW()+3)/4)-INT((ROW()+3)/4))*4=2;COLUMN()=1);INDIRECT(ADDRESS(INT((ROW()+3)/4);4;;;"Sheet1"));"")))

Indsæt formlen i celle A1 og celle B1 og træk nedad så lang du har brug for.

Du kan så (hvis du har brug for det) kopiere resultatet og indsætte værdierne - så har du samme resultat, som hvis du kopierede cellerne ved hjælp af VBA.

Simon

Godkendelse af svar
Fra : Krogh_Jensen


Dato : 04-06-10 10:24

Dét spiller simpelthen!

Kiggede lidt på din formel, og troede sgu ikke du havde løst den - men den sidder lige i skabet!

Tusind tak for hjælpen! -Jeg henvender mig til dig, næste gang jeg sidder fast :)

/poul

Du har følgende muligheder
Eftersom du ikke er logget ind i systemet, kan du ikke skrive et indlæg til dette spørgsmål.

Hvis du ikke allerede er registreret, kan du gratis blive medlem, ved at trykke på "Bliv medlem" ude i menuen.
Søg
Reklame
Statistik
Spørgsmål : 173446
Tips : 31650
Nyheder : 719565
Indlæg : 6382265
Brugere : 218247

Månedens bedste
Årets bedste
Sidste års bedste