Avatar billede cybermaster Nybegynder
09. december 2002 - 16:23 Der er 12 kommentarer og
1 løsning

DHENT

Gerne en grundig beskrivelse


Hvordan fungerer den, giv evt et ex.
Jeg har en db i access der hedder varesortiment.
Der er en tabel der hedder vare lager, og i den er der bla. felterne varenr, beskrivelse, udpris.

ideen er den at jeg taster varenr ind, og regnearket finder resten...
Avatar billede katborg Praktikant
09. december 2002 - 17:15 #1
Hvis du skriver =DHENT( i en celle og trykker på 'fx', kan der en guide op, med de felter du skal udfylde i formlen.

Nederst til venstre står der med blåt

"Hjælp til denne funktion", hvor der står beskrevet hvordan du bruger formlen. Som jeg læser det virker formlen kun til et celleområde i excel.

DHENT
Se også

Uddrager en enkeltværdi fra en kolonne på en liste eller i en database, som opfylder de angivne kriterier.

Syntaks

DHENT(database;felt;kriterier)

Database  er det celleområde, der udgør listen eller databasen. En database er en liste med relaterede data, hvor rækkerne med relaterede oplysninger er poster, og kolonnerne med data er felter. Den første række på listen indeholder etiketter til hver kolonne.

Felt  angiver, hvilken kolonne der benyttes i funktionen. Argumentet felt kan bestå af tekst med kolonneetiketten omsluttet af dobbelte anførselstegn, f.eks. "Alder" eller "Høst", eller af tal, der repræsenterer kolonnens placering på listen: 1 til den første kolonne, 2 til den anden kolonne osv.

Kriterier  er det celleområde, der indeholder de angivne betingelser. Du kan bruge et hvilket som helst område til kriterieargumentet, forudsat at det indeholder mindst én kolonneetiket og mindst én celle under kolonneetiketten til angivelse af en betingelse til kolonnen.

Bemærk!

Hvis der ikke er nogen poster, der opfylder kriterierne, returnerer DHENT fejlværdien #VÆRDI!.
Hvis flere poster opfylder kriterierne, returnerer DHENT fejlværdien #NUM!.
Avatar billede cybermaster Nybegynder
09. december 2002 - 17:19 #2
ja tak katborg >> hvordan ser det så ud her,.... det har jeg ikke kunne finde under hjælp... MEN jo jeg kender godt til hjælpe functionerne.
DHENT(database;felt;kriterier)
DHENT("varesortiment";A2;"varenr") ....

Det er her skoen trykker....
Avatar billede cybermaster Nybegynder
09. december 2002 - 17:23 #3
=DHENT("varesortiment";"beskrivelse";A2) .... eller hva?

Hvad drager du ud af den konklution som der så pænt er skrevet i hjælpe filen???
Avatar billede katborg Praktikant
09. december 2002 - 17:23 #4
"Hjælp til denne funktion",

Som jeg læser det VIRKER FORMLEN KUN til et celleområde I EXCEL.

Og kan altså IKKE bruges til at hente data for Access :-(

Ved ikke om der er andre metoder til at gøre det du ønsker
Avatar billede cybermaster Nybegynder
09. december 2002 - 17:27 #5
katborg >> Hvis formlen KUN virker i excel, ville det være FORKERT, at de laver det under DATABASE ~ DHENT, da excel IKKE er en DATABASE...
Avatar billede cybermaster Nybegynder
09. december 2002 - 17:29 #6
som du selv lige har paste ind "Uddrager en enkeltværdi fra en kolonne på en liste eller i en database, som opfylder de angivne kriterier."
Avatar billede katborg Praktikant
09. december 2002 - 17:30 #7
Jeg er for så vidt enig med dig men ...

Forklaringen til "database"

Database  er det celleområde, der udgør listen eller databasen, dvs. Microsoft mener åbentbart at en liste/tabel i excel er ? database ??
Avatar billede cybermaster Nybegynder
09. december 2002 - 17:32 #8
Hmmm når venter og ser om der er nogen med sikkerhed der ved det
Avatar billede cybermaster Nybegynder
09. december 2002 - 17:49 #9
Avatar billede sjap Praktikant
09. december 2002 - 18:35 #10
Citat fra Excels egen hjælp:

"En database er en liste med relaterede data, hvor rækkerne med relaterede oplysninger er poster, og kolonnerne med data er felter. Den første række på listen indeholder etiketter til hver kolonne."

Jeg kan supplere med at f.eks. en liste over postnumre også betragtes som en database. Jeg kan godt forstå jeres forvirring omkring begreberne, men en database er i princippet ikke mere end en tabel. Et databaseprogram er en helt anden snak. :-)
Avatar billede sjap Praktikant
09. december 2002 - 18:38 #11
Lige en ting mere fra Excel:
"Hvis du vil analysere dataene fra en Microsoft Access-tabel, kan du bruge funktionerne i Microsoft Excel til at eksportere dataene automatisk til en ny Microsoft Excel-projektmappe. Du kan også importere regnearksdata til Microsoft Access. Hvis du kun har brug for enkelte poster fra en Microsoft Access-tabel, kan du åbne tabellen og kopiere de relevante poster til Microsoft Excel.
Hvis du arbejder i Microsoft Excel og har installeret og indlæst tilføjelsen AccessLinks, kan du konvertere en liste til en Microsoft Access-databasefil.
Du kan oprette en pivottabel for at analysere data fra Microsoft Access på samme måde som fra enhver anden ekstern datakilde."
Avatar billede cybermaster Nybegynder
09. december 2002 - 18:42 #12
superjap >> Tak for informationerne.

Jeg har fået svar på mit spørgsmål, fra at kigge lidt mere rundt, her på eksperten, og det kan lade sig gøre via vb, jeg roder lige lidt rund med det, og poster det når jeg er færdig.
Avatar billede cybermaster Nybegynder
10. december 2002 - 14:43 #13
i ark1 ligges der i program koden:

Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("E3")) Is Nothing Then Call GetTable
End Sub

og i modul:

Sub GetTable()
  Dim Db As Database
  Dim Rs As Recordset
  Dim Ws As Object
  Dim i As Integer
  Dim Path As String
  'aktuel arknavn
  Set Ws = Sheets("Ark1")
  'sti til database
  Path = "C:\Documents and Settings\butik\My Documents\varesortiment.mdb"
 

  Set Db = Workspaces(0).OpenDatabase(Path, ReadOnly:=True)
  'Selectstreng til TABEL1
  'Hent data
  sqlstr = "SELECT * FROM Varelager WHERE varenr =" & Range("E3").Value & ";"


  '*** Hent data ***
  Set Db = Workspaces(0).OpenDatabase(Path, ReadOnly:=True)
  Set Rs = Db.OpenRecordset(sqlstr)
 
 

  '*** Indsæt VareTekst i A5 og Disponent i A7 ***
  Ws.Range("A4") = Rs.Fields("beskrivelse")
  Ws.Range("B4") = Rs.Fields("udpris")

  '*** luk databasen igen ***
  Rs.Close
  Db.Close

End Sub
Sub Makro3()
'
' Makro3 Makro
' Makro indspillet 09-12-2002 af butik
'

'
    Selection.SpecialCells(xlCellTypeLastCell).Select
    Range("A3").Select
    ActiveCell.FormulaR1C1 = "=Ark1!R[-2]C[1]"
    Range("A4").Select
End Sub
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