Database functies Excel

Status
Niet open voor verdere reacties.

Floris1983

Gebruiker
Lid geworden
5 aug 2020
Berichten
21
Goedemorgen allemaal,

In een oproepbare database welke ik simpel werkend heb gekregen door middel van onderstaande code (let wel, dit gaat uiteindelijk om 150 hits) vraag ik me af of een en ander niet simpeler kan. Op de manier hoe ik het heb gedaan kopieer ik cellen naar een database.

Code:
Public Sub TO_Database()
rij = Sheets("MAIN").Range("DJ7") + 2
Sheets("Database").Range("C" & rij) = Sheets("Main").Range("DK6")
Sheets("Database").Range("d" & rij) = Sheets("Main").Range("D35")
Sheets("Database").Range("e" & rij) = Sheets("Main").Range("D36")
Sheets("Database").Range("f" & rij) = Sheets("Main").Range("D37")
Sheets("Database").Range("g" & rij) = Sheets("Main").Range("D38")
Sheets("Database").Range("h" & rij) = Sheets("Main").Range("d39")
Sheets("Database").Range("i" & rij) = Sheets("Main").Range("D40")
Sheets("Database").Range("j" & rij) = Sheets("Main").Range("D41")

Om het 2 kanten op te laten werken, zoek ik de data op uit de database in een rits verborgen cellen, en plaats ze dan terug in de juiste cellen door middel van de volgende code.

Code:
Sheets("Main").Range("d35").Value = Range("B45").Value
Sheets("Main").Range("d36").Value = Range("c45").Value
Sheets("Main").Range("d37").Value = Range("d45").Value
Sheets("Main").Range("d38").Value = Range("e45").Value
Sheets("Main").Range("d39").Value = Range("f45").Value
Sheets("Main").Range("d40").Value = Range("g45").Value
Sheets("Main").Range("d41").Value = Range("h45").Value

Al met al werkt het maar is het volgens mij een erg omslachtige manier welke de snelheid niet echt ten goede komt :)

Is er iemand die even wil helpen?

groetjes.
 
Hoi Jean Paul,

Heb even een voorbeeldbestandje gemaakt. De uiteindelijke versie behelst 500 reizen en een volledige stabiliteitsberekening.
 

Bijlagen

Waarom maak je van de database niet een gewone tabel ? (Insert / Table) (in VBA Listobject.
Nu kun je naar hartelust filteren, sorteren, selectern.
De overige werkbladen zijn overbodig.
Dat geldt ook voor VBA.
 
Waarom maak je van de database niet een gewone tabel ? (Insert / Table) (in VBA Listobject.
Nu kun je naar hartelust filteren, sorteren, selectern.
De overige werkbladen zijn overbodig.
Dat geldt ook voor VBA.

Hoi, dank je voor je reactie. Of ik begrijp jouw niet helemaal, of jij mij niet Ik zal het proberen uit te leggen: Het gaat om meerdere grote invulbladen, die voor het overzicht op meerdere bladen staan. Omdat iemand zonder gevorderde excel kennis de sheet moet kunnen gebruiken zou ik graag de invul cellen vullen met gegevens uit de database. Uiteindelijk worden we waardes uit de ingevoerde gegevens gebruikt om in andere gevallen iets op te zoeken waarna het geheel via het print blad eruit komt rollen.

Zal eens een versie zonder privé gegevens uploaden.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan