Avatar billede clemen Nybegynder
14. april 2003 - 11:22 Der er 13 kommentarer og
1 løsning

find celle vha VBA

Hej eksperter

Jeg har en tabel i arket "Database" med dato'er i først kolonne og navne i første række. I arket "find" har jeg i celle d3 en dato og i celle e5 et navn. Nu vil jeg gerne vha VBA kode vælge cellen i tabellen arket database der passer til de to?

F.eks. d3=24-04 og e3= andre
skal jeg have valgt cellen udfor datoen 24-04 og under navnet andre.

Håber at der er forståeligt.
Avatar billede janvogt Praktikant
14. april 2003 - 12:05 #1
Det behøver du egentlig ikke VBA for at klare.
Man kan godt konstruere en formel som klarer et "dobbelt-opslag".
Avatar billede clemen Nybegynder
14. april 2003 - 12:11 #2
Jeg ved, men har brug for VBA da det er et led i noget VBA jeg har lavet.

Og det jeg mangler er bare at få selected denne celle.
Avatar billede clemen Nybegynder
14. april 2003 - 13:10 #3
Jeg vil ikke kopier resultatet fra cellen, men ved VBA select den pågældene celle.
Avatar billede janvogt Praktikant
14. april 2003 - 13:21 #4
Ja, jeg forstår .... og lægger hovedet i blød .... :-)
Avatar billede janvogt Praktikant
14. april 2003 - 14:16 #5
Du behøver ikke VBA for at vælge en celle.
Du kan evt. bruge OFFSET-funktionen.
Avatar billede clemen Nybegynder
14. april 2003 - 14:30 #6
Kender ikke offset funktionen. Da jeg skal trykke på en knap hvis jeg vil have overført nogle værdier til en celle, så behøver jeg VBA
Avatar billede janvogt Praktikant
14. april 2003 - 15:42 #7
Så skulle den være der.
Du kan bruge denne kode:

Sub Lookup_2D()
Dim iRowOffset As Integer, iColumnOffset As Integer

iRowOffset = Application.Match(Range("Row"), _
  Range("RowHeaders"))
iColumnOffset = Application.Match(Range("Column"), _
  Range("ColumnHeaders"))

Range("RowHeaders").Cells(1).Offset(-1, 0). _
  Offset(iRowOffset, iColumnOffset).Activate
End Sub

Navngiv områderne i dit ark:
RowHeaders
ColumnHeaders
Row
Column
Avatar billede clemen Nybegynder
14. april 2003 - 15:50 #8
Range("RowHeaders").Cells(1).Offset(-1, 0). _
  Offset(iRowOffset, iColumnOffset).Activate

viser en fejl her
Avatar billede clemen Nybegynder
14. april 2003 - 15:52 #9
Du må hellere se hele min kode.

Sub Udlån()
    Dim iRowOffset As Integer, iColumnOffset As Integer
    Range("E7:E38").Select
    Selection.Copy
    iRowOffset = Application.Match(Range("Row"), _
        Range("RowHeaders"))
    iColumnOffset = Application.Match(Range("Column"), _
        Range("ColumnHeaders"))
    Range("RowHeaders").Cells(1).Offset(-1, 0). _
        Offset(iRowOffset, iColumnOffset).Select
    Selection.PasteSpecial Paste:=xlValues, Operation:=xlAdd, SkipBlanks:= _
        False, Transpose:=False
End Sub
Avatar billede janvogt Praktikant
14. april 2003 - 16:04 #10
Celle D3 skal døbes "Row"
Celle E3 skal døbes "Column"
Dine dato-data i A-kolonnen skal døbes ColumnHeaders
Og det vandrette område, som indeholder "andre".

Jeg kan evt. sende mit eksempel til dig. Det virker fint ....


Du har indsat noget ekstra kode, som ikke skal være der, ihvertfald ikke for at løse det spørgsmål du stiller.
Avatar billede janvogt Praktikant
14. april 2003 - 16:05 #11
Det har vel ikke noget med Udlån-spørgsmålet at gøre? :-)
Avatar billede janvogt Praktikant
14. april 2003 - 16:25 #12
Sorry, der var en fejl (ikke i koden):
Dine dato-data i A-kolonnen skal døbes RowHeaders
Avatar billede clemen Nybegynder
15. april 2003 - 07:16 #13
He he det har noget med udlån og gøre.

Tak for hjælpen
Avatar billede clemen Nybegynder
15. april 2003 - 08:07 #14
at gøre
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

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