Avatar billede gladhund Nybegynder
29. august 2010 - 12:26 Der er 10 kommentarer og
1 løsning

Ved dobbeltklik i række, returner adresse på cellen i kolonne b

Hej eksperter,

Jeg har en liste med poster, hvor unikt ID vises i kolonne B. Jeg vil gerne have, at brugeren kan dobbeltklikke i en vilkårlig celle i en vilkårlig række, fx i rækken hvor ID 25 er, og så returneres B6. Se eksempel:


1  B    C        D          E 
2  ID  Titel  Kategori  Påmindelsesdato
3  1  en      udvikling  01-02-2010
4  3  tre    drift      12-12-1998
5  24  fire..  drift      23-04-2011
6  25  femog.. udvikling  05-05-2010
7  43  ...    ...        ...

Så vil jeg bruge B6 i en combobox i en userform til at vise data for en valgte post.

På forhånd tak.
Avatar billede excelent Ekspert
30. august 2010 - 22:28 #1
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
MsgBox Range("B" & Target.Row).Address
End Sub
Avatar billede gladhund Nybegynder
30. august 2010 - 22:55 #2
Det er super, thanx excelent :). Jeg havde forklaret mig lidt forkert, for det er ikke B6 jeg skal bruge men selve ID'et. Men hvis jeg erstatter .Address med .Value, så virker det som det skal.

Jeg går ud fra, at jeg så blot kan gemme værdien i en variabel (Dim klik as int) og så bruge den, når jeg efterfølgende åbner min userform og assigner comboboxens value som den variabel?

Og smid endelig et svar. Det var fedt du svarede - jeg var begyndt at synes, at der var blevet helt dødt herinde...
Avatar billede gladhund Nybegynder
30. august 2010 - 23:02 #3
Det ser ud til at jeg skal have gemt værdien et andet sted end i worksheet koden, hvis det skal kunne bruges i formularen...?
Avatar billede excelent Ekspert
30. august 2010 - 23:03 #4
ja og velbekom
Avatar billede gladhund Nybegynder
30. august 2010 - 23:09 #5
Jeg kan gemme id'ets value i et ark, og så hente det igen når ved userform_activate, men jeg vil hellere gemme det i kode, så det ikke "fylder". Kan man det?
Avatar billede excelent Ekspert
30. august 2010 - 23:16 #6
fx som defineret navn

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
ActiveWorkbook.Names.Add Name:="info", RefersTo:=Range("B" & Target.Row).Value
End Sub

koden kan evt laves så den kun reagerer på dobbeltklik i kolonne B
Avatar billede excelent Ekspert
30. august 2010 - 23:25 #7
du kan fjerne = og "" med følgende kode :
Replace(Replace(ActiveWorkbook.Names("info").Value, "=", ""), """", "")
Avatar billede gladhund Nybegynder
30. august 2010 - 23:33 #8
Cool med det med navnet, det forstod jeg :). Men det med at fjerne = og "" forstår jeg desværre overhovedet ikke...
Avatar billede excelent Ekspert
30. august 2010 - 23:41 #9
prøv kør denne

Sub vis()
MsgBox ActiveWorkbook.Names("info").Value
End Sub
Avatar billede gladhund Nybegynder
31. august 2010 - 07:24 #10
Så viser den =havelågeN/A

(kan ikke lige finde havelåge på min mac...). Skal jeg så bruge replace-koden for at undgå det, eller? Og hvis det er, hvor skal jeg så bruge den henne?
Avatar billede excelent Ekspert
31. august 2010 - 15:11 #11
nu ved jeg ikke lige hvor det går galt
så se forløbig bort fra kommentar #7 og #8
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Excel kurser for alle niveauer og behov – find det kursus, der passer til dig

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester