• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

Waardes kopieren naar database met VBA

Status
Niet open voor verdere reacties.

GercoTermaat

Gebruiker
Lid geworden
30 mrt 2017
Berichten
10
Goedemiddag,

Ik ben bezig met het maken van een calculatiesheet voor het berekenen van de kosten voor het frezen.
Met Solidworks kan ik berekenen welke frezen gebruikt worden en wat de kosten daarvan zijn. Hier komt een Excelbestand uit met allemaal waardes.
Ik wil met behulp van Excel de freesdiameters aanpassen uit de lijst met gegevens.

Uit deze lijst haal ik 4 waardes per bewerking. Deze waardes heb ik genummerd, hierdoor kan ik de waardes zoeken met de functie: verticaal zoeken.
Ik heb een lijst gemaakt met de bewerkingen uit Solidworks en wil de foute waardes vervangen. Dit moet handmatig gedaan worden dit is gelukt. Hierdoor heb ik de goede waardes en wil de oude waarden in de lijst wijzigen met een macro.

Dit zal misschien onduidelijk zijn, daarom zal ik dit beter uitleggen:
In kolom A wordt genummerd van 1 t/m de laatste bewerking. In kolom B en C staan waardes die de bewerking beschrijven, deze worden niet aangepast. Kolom D,E en F moeten aangepast worden.
In H16 heb ik het nummer uit "A", I16 en J16 de beschrijving. In K16, L16 en M16 staan de waardes die D, E en F moeten aanpassen.

Het lijkt mij redelijk eenvoudig, alleen heb ik weinig ervaring met VBA. Zou iemand mij hiermee kunnen helpen?

Hierbij mijn bestand. Het gaat om blad 2.

Bekijk bijlage Formule aanpassen gereedschap.xlsm

Alvast bedankt,
Gerco Termaat

P.S. In N16 staat nog een waarde, namelijk het verschil tussen F en M16. Hoe sla ik deze waarde op, waarbij de volgende waarde in N16 onder de eerste waarde komt? (Een lijst maken met alle waardes die in N16 komen)
 
Laatst bewerkt:
Niet dat ik er iets van begrijp maar breng eerst structuur aan in deze chaos. Blad1 is een gedigitaliseerde printout van Solidworks? In blad2 wil je alleen de itmes -Manufacturing Cost Breakdown- zien en dan er vervolgens ook nog iets mee doen? Het gebruik van kolomkoppen wil ook wel eens helpen om te begrijpen van wat waar staat. De code in het bestand geeft ook geen verduidelijking.
 
Het is inderdaad een chaos, dit bestand heb ik gemaakt om mijn idee met macro's te testen. In mijn echte calculatiesheet zal dit duidelijk weergeven worden.

Blad 1 is inderdaad een printout van Solidworks en ik wil inderdaad alleen de -Manufacturing Cost Breakdown- zien op blad 2.

In H10:M10 is een regel te zien uit de waardes links. De keuzelijsten zijn bedoeld om het type frees en de diameter daarvan te veranderen. Het idee hierachter is dat een frees een bepaald volume per minuut kan bewerken, hiermee kan berekend worden wat de kosten van een andere frees zijn.

Wat ik wil:
Zoals gezegd haalt de bovenste regel (H10:M10) de waardes op uit de lijst. Ik wil deze aanpassen met de keuzelijsten en in de regel H16:M16 zetten. Dit is gelukt.
Wat ik nog moet doen is deze aangepaste regel (H16:M16) weer in de lijst zetten. De waarde van N16 moet in een aparte lijst onder elkaar komen te staan, zodat ik hier een som van kan maken en het totale kostenverschil kan berekenen.

Ik hoop dat het duidelijker is geworden.

Dit zou duidelijker moeten zijn.

Bekijk bijlage Formule aanpassen gereedschap.xlsm
 
Kijk of de dit werkt.
succes...
Code:
Sub LijstVernieuwen()

    sq = Range("H16").Resize(1, 6).Value
    Cells(Range("h16").Value, 1).Resize(1, 6).Value = sq
    
    Cells(Rows.Count, 15).End(xlUp).Offset(1) = Range("N16").Value
    
End Sub
 
Kijk of de dit werkt.
succes...
Code:
Sub LijstVernieuwen()

    sq = Range("H16").Resize(1, 6).Value
    Cells(Range("h16").Value, 1).Resize(1, 6).Value = sq
    
    Cells(Rows.Count, 15).End(xlUp).Offset(1) = Range("N16").Value
    
End Sub

Sa11,

Hartelijk dank voor je hulp. Ik heb er zelf dit van gemaakt, anders werd alleen 0,00 in een nieuwe rij gezet:

Code:
Sub LijstVernieuwen()
    
    Cells(Rows.Count, 15).End(xlUp).Offset(1) = Range("N16").Value
    
    sq = Range("H16").Resize(1, 6).Value
    Cells(Range("h16").Value, 1).Resize(1, 6).Value = sq
    
       
End Sub

Nogmaals bedankt!
 
Status
Niet open voor verdere reacties.

Nieuwste berichten

Terug
Bovenaan Onderaan