03. juni 2004 - 18:49Der er
9 kommentarer og 3 løsninger
hente data fra et ark til en celle i naboark.
Jeg skal fra en liste i kolonne A (1,2,3,4-200) hente de celler der i kolonne B er sat kryds ved, og overføre dem i et nabo ark i en celle adskilt med et komma og et mellem rum. eks. A | B 1 1 |tom 2 2 |x 3 3 |x de celler i kolonne A der med et kryds er valg i kolonne B, skal føres over i et nabo ark og se sådan ud, Nabo ark: sættes i en celle og se sådan ud: 2, 3, ?
Jeg har prøvet med HVIS funktionen men der var ikke plads nok i formlen, ser sådan ud:=HVIS(Beregningsark!H3>0;Beregningsark!I3;)&HVIS(Beregningsark!H4>0;Beregningsark!I4;)osv. Håber I kan hjælpe. På forhånd tak!
Efter ti år i London, Madrid, Paris og Utrecht kommer Sabios AI-fokuserede program af arrangementer om kundeoplevelser, ‘Disrupt’, for første gang til Danmark.
Public Function FindX() Dim Rw As Long, Data As String Rw = Range("A65536").End(xlUp).Row For i = 1 To Rw If UCase(Cells(i, 2)) = "X" Then Data = Data & Cells(i, 1) & Chr(44) End If Next FindX = Left(Data, Len(Data) - 1) End Function
skriv =FindX() i den celle du vil have dem overført til
Jeg har prøvet at oprette et modul i Visual Basic ( for første gang ), jeg har direkte kopieret din tekst, og derefter indsat =FindX() i ark 2, men den kommer frem med #værdi, skal der stå noget i mellem () i =FindX(), jeg har prøvet med =FindX(Ark1!B:B) og =FindX(Ark1!A:A), men det er jo nok ikke rigtigt, har tid og lyst til at forklarer en nybeynder fremgangs måden (undskyld) ;-) 1000 tak indtil videre.
Public Function FindX() Dim Rw As Long, Data As String Set ws = Worksheets("Ark1") ' ret navnet til det ark , den skal hente fra Application.Volatile Rw = ws.Range("A65536").End(xlUp).Row For I = 1 To Rw If UCase(ws.Cells(I, 2)) = "X" Then Data = Data & ws.Cells(I, 1) & Chr(44) End If Next FindX = Left(Data, Len(Data) - 1) End Function
Nu har jeg helt lavet den om, nu skal du vise den området med de 2 kolonner.
Public Function FindX(Område As Range) Dim Data As String, Fdata As Variant Application.Volatile Fdata = Område For I = 1 To UBound(Fdata) If UCase(Fdata(I, 2)) = "X" Then Data = Data & Fdata(I, 1) & Chr(44) End If Next FindX = Left(Data, Len(Data) - 1) End Function
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.