Leta upp och kopiera värden i excel

Permalänk
Medlem

Leta upp och kopiera värden i excel

Jag sitter inför ett problem i excel som jag inte vet hur jag ska lösa.

Det är så att jag har en xlsfil med 6 flikar, varje filk innehåller ca 3 000 rader och 8 kollumner. Då det kommer att bli en återkommande körning på datorer som enbart har excel är det inte aktuellt att göra det i något vettigt program såsom matlab.

I varje flik finns alltså kollumnerna 1-8 där genom att använda en funktin i flik 1 cell b5 vill leta upp den första gången i flik 2, kollumn 8 där cellens värde är 1, därefter visa värdet från flik 2, samma rad som där cellens värde är 1 fast kollumn 1 istället i flik 1 b5. därefter vill jag i flik 1 b6 visa värdet från flik 2, rad där kollumn 8 blir 1 fast kollumn 1 i flik 1 b6 osv. Sågon som vet hur man kan åstakomma detta?

Visa signatur

/me

Permalänk
Medlem

Tror inte det skulle vara några problem att göra eftersom dokumentet har en fast struktur.
Koda i excel kan man göra i språket VBA.

Googla på tex "copy values vba excel"

Permalänk
Medlem

Jag googlade på exakt ditt förslag och genom att läsa första träffen så har jag kommit fram till följande.

Sub CopyDataToPlan() Dim LDate As Integer Dim LRow As Integer Dim LRad As Integer On Error GoTo Err_Execute 'Retrieve date value to search for LDate = 1 LRad = 3 Sheets("Blad2").Select 'Start at rad 4 LRow = 4 While LRow < 3000 If Cells(LRow, 3) = LDate Then 'Select values to copy from "Rolling Plan" sheet Sheets("Blad2").Select Cells(LRow, 2).Select Selection.Copy 'Paste onto "Plan" sheet Sheets("Blad1").Select Cells(LRad, 3).Select Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _ False, Transpose:=False LRad = LRad + 1 Sheets("Blad2").Select End If LRow = LRow + 1 Wend MsgBox "The data has been successfully copied." Exit Sub Err_Execute: MsgBox "An error occurred." End Sub

Och det funkar utmärkt! Tack för tipset.

Visa signatur

/me