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

Kodeord


Reklame
Top 10 brugere
MS-Office
#NavnPoint
sion 18709
refi 14474
Klaudi 9389
Rosco40 5695
berpox 5456
dk 5398
webnoob 4919
Benjamin... 4870
o.v.n. 4637
10  EXTERMINA.. 4373
Flytte celler med loop i VBA
Fra : Krogh_Jensen
Vist : 597 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 : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408929
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste