Vraag


Acties:
  • 0 Henk 'm!

  • Piintoo
  • Registratie: Maart 2024
  • Laatst online: 11-03-2024
Goedemiddag!

Ik ben op zoek naar iemand die mij kan helpen met het maken van een macro.
Wij hebben een groot log bestand, waarin de cijfers iedere maand toegevoegd worden en hier opmerkingen door leidinggevende gemaakt kunnen worden. Nu wil ik een macro maken die de formule om de cijfers op te halen kopieert naar de volgende rij en de waarde uit de vorige maand hard kopieert en plakt. De macro moet vervolgens telkens een maand meebewegen.

Is er iemand die hier ervaring mee heeft en mij hiermee kan helpen? Het lukt mij om de macro zo te maken dat deze handeling automatisch gaat (vrij standaard natuurlijk), maar niet dat het iedere keer een maand opschuift.

Alvast bedankt voor de hulp!

Alle reacties


Acties:
  • 0 Henk 'm!

  • RaZ
  • Registratie: November 2000
  • Niet online

RaZ

Funky Cold Medina

Maak eerst maar eens een begin, en als je er dan niet meer uitkomt, kan je vragen om hulp door de relevante code te delen.

Als je een afhaal product wil zal je iemand moeten inhuren en netjes betalen ;)

Ey!! Macarena \o/


Acties:
  • +3 Henk 'm!

  • tritimee
  • Registratie: December 2006
  • Laatst online: 13-09 21:26
neem je macro eens op, terwijl je de handelingen die je zoekt zelf uitvoert. Daarmee krijg je vaak al een idee wat er moet gebeuren

Acties:
  • +1 Henk 'm!

  • pagani
  • Registratie: Januari 2002
  • Niet online
Ik begrijp sowieso niet waarom dit met een macro zou moeten, je kunt toch prima de formule verder slepen of automatisch laten werken?

Acties:
  • 0 Henk 'm!

  • Piintoo
  • Registratie: Maart 2024
  • Laatst online: 11-03-2024
Bedankt voor alle snelle reacties.

@RaZ . Net zoals dat ik nieuw ben met macro's, ben ik ook nieuw op de forums van Tweakers. Uiteraard begrijp ik wel dat je hier niet zomaar even afhaal producten kunt komen opvragen. De hoop is dat iemand mij een stapje verder kan helpen en ik daar weer van kan leren..

@tritimee Ik heb de macro opgenomen, maar loop vast wanneer ik de cijfers van Feb naar Mrt en weer verder moet overnemen etc. Dit is overigens ook een van de eerste keren dat ik macro's gebruik, dus mijn kennis gaat tot waar ik de verschillende instructies via youtube etc kan volgen.

@pagani Probleem is niet dat de formule niet doorgetrokken kan worden, maar dat de cijfers iedere maand in dit bestand ververst worden. Echter, betrekking hebben op een nieuwe maand. Je zou dan dus 12x dezelfde cijfers zien, tenzij je de eerdere maanden eerst hard maakt. Het zijn echter een hele hoop kostenplaatsen, waardoor zo'n handmatig klusje een hele klus gaat worden.

Acties:
  • +1 Henk 'm!

  • Martijnhijink
  • Registratie: Augustus 2009
  • Laatst online: 10-09 15:09
Kijk ook eens naar Power Query binnen excel om data uit een bestand op te halen. kun je direct de data in het juiste format transformeren. (gegevens/gegevens ophalen uit bestand) en gebruik de optie transformeren om zaken aan te passen.

Acties:
  • 0 Henk 'm!

  • Coach4All
  • Registratie: Januari 2003
  • Laatst online: 12-09 10:26

Coach4All

I'm a Coach 4 All

Op basis van FileDateTime je data in het juiste tabblad laten landen?

https://www.techonthenet.com/excel/formulas/filedatetime.php

--- Systeembeheerdersdag --- Voedselintolerantie ---


Acties:
  • 0 Henk 'm!

  • dix-neuf
  • Registratie: Juli 2018
  • Niet online
Een screenshot waarin te zien is WAAR (in welke rijen en kolommen) je gegevens staan en wat er gekopieerd moet worden, zou al heel wat duidelijker maken.

Acties:
  • 0 Henk 'm!

  • Piintoo
  • Registratie: Maart 2024
  • Laatst online: 11-03-2024
@dix-neuf Misschien maakt dit het wat duidelijker.

Afbeeldingslocatie: https://tweakers.net/i/6sSV7dXFVBkJE_29lOc1jk2deTA=/800x/filters:strip_exif()/f/image/8RUxHX8jQ71BrgylLMeUJLS8.png?f=fotoalbum_large

Dus de cijfers van januari moeten hard gemaakt worden in februari etc. Ik heb nu zelf wel de formule zo gemaakt dat hij werkt als ik een bepaalde cel bijvoorbeeld "Mrt" noem. De handeling die overblijft is het hard maken van de maanden die al geweest zijn. Wellicht is hier wel een makkelijke macro voor die telkens een rij naar beneden gaat. Of wordt het 11 keer de macro maken? Dan kan ik het waarschijnlijk net zo goed handmatig doen? haha

Acties:
  • 0 Henk 'm!

  • dix-neuf
  • Registratie: Juli 2018
  • Niet online
Helaas kopieerde je de rijnummers en kolomletters niet mee, zo te zien gaat het (in eerste instantie) om het kopiëren van C3:i3. En de tekst in je eerste bericht is ook niet duidelijk. Je schrijft:
Nu wil ik een macro maken die de formule om de cijfers op te halen kopieert naar de volgende rij en de waarde uit de vorige maand hard kopieert en plakt.
Moeten nu alleen de waarden gekopieerd worden, of ook de formules ?

Acties:
  • 0 Henk 'm!

  • Piintoo
  • Registratie: Maart 2024
  • Laatst online: 11-03-2024
@dix-neuf Je hebt gelijk. Lekker onhandig.. Maar wat je schrijft klopt inderdaad. De formule moet gekopieerd worden naar de volgende rij. Waarna de eerdere rij hard gemaakt dit te worden.

Acties:
  • 0 Henk 'm!

  • Coach4All
  • Registratie: Januari 2003
  • Laatst online: 12-09 10:26

Coach4All

I'm a Coach 4 All

--- Systeembeheerdersdag --- Voedselintolerantie ---


Acties:
  • 0 Henk 'm!

  • dix-neuf
  • Registratie: Juli 2018
  • Niet online
Piintoo schreef op maandag 11 maart 2024 @ 15:58:
Waarna de eerdere rij hard gemaakt dit te worden.
Dat begrijp ik niet. Het resultaat van de formules in de gekopieerde rij wijzigt toch normaliter niet?
En verder: Je geeft niet aan hoe je formules er uitzien, hopelijk heb je - indien van toepassing - de dollartekens goed geplaatst. Als dat zo is: selecteer een cel in de te kopiëren rij en voer onderstaande macro uit. Die procedure kun je steeds herhalen bij volgende kopieeracties.

code:
1
2
3
4
5
6
7
8
Sub Kopieer()
Dim acr As Integer
acr = ActiveCell.Row
Range("C" & acr & ":I" & acr).Copy
Range("C" & acr + 1 & ":I" & acr + 1).PasteSpecial Paste:=xlPasteFormulas
Application.CutCopyMode = False
Range("C" & acr).Activate
End Sub
Dat is ook gewoon in de helpfile van Excel te vinden hoor.

Acties:
  • 0 Henk 'm!

  • Coach4All
  • Registratie: Januari 2003
  • Laatst online: 12-09 10:26

Coach4All

I'm a Coach 4 All

dix-neuf schreef op maandag 11 maart 2024 @ 16:26:
[...]

[...]
Dat is ook gewoon in de helpfile van Excel te vinden hoor.
Inderdaad, maar hoe link je daar naartoe op een forum? :?

--- Systeembeheerdersdag --- Voedselintolerantie ---


Acties:
  • +1 Henk 'm!

  • dix-neuf
  • Registratie: Juli 2018
  • Niet online
Coach4All schreef op dinsdag 12 maart 2024 @ 07:58:
Inderdaad, maar hoe link je daar naartoe op een forum? :?
Daar heb je een punt, want dat zou ik niet weten. En verwijzen naar Microsoft's helpfile online is ook verwijzen naar een website en komt dus overeen met jouw antwoord. Sorry, ik had mijn opmerking daaromtrent beter achterwege kunnen laten.

Acties:
  • 0 Henk 'm!

  • akimosan
  • Registratie: Augustus 2003
  • Niet online
@Coach4All : als je de titel van het help artikel in je Office toepassing even in Bing/Google gooit, krijg je de online versie snel bovenwater:


Een formule vervangen door het resultaat

Een formule vervangen door het resultaat - Microsoft Ondersteuning

Acties:
  • 0 Henk 'm!

  • Coach4All
  • Registratie: Januari 2003
  • Laatst online: 12-09 10:26

Coach4All

I'm a Coach 4 All

akimosan schreef op dinsdag 12 maart 2024 @ 14:51:
@Coach4All : als je de titel van het help artikel in je Office toepassing even in Bing/Google gooit, krijg je de online versie snel bovenwater:


Een formule vervangen door het resultaat

Een formule vervangen door het resultaat - Microsoft Ondersteuning
Dat klopt voor "handwerk", maar voor VBA vind ik dat niet zo snel.....

--- Systeembeheerdersdag --- Voedselintolerantie ---


Acties:
  • 0 Henk 'm!

  • Lustucru
  • Registratie: Januari 2004
  • Niet online

Lustucru

26 03 2016

Het is niet meer dan de waarde uitlezen en weer wegschrijven. Bijvoorbeeld als je een aantal cellen geselecteerd hebt:
Visual Basic:
1
2
3
4
5
6
Sub KillFormula()
    Dim c As Range
    For Each c In Selection
        c.Value = c.Value
    Next
End Sub

of als variant in een copy paste aktie. Wijzig in de macro van @dix-neuf de paste regel:
code:
1
Range("C" & acr + 1 & ":I" & acr + 1).PasteSpecial Paste:=xlPasteValues

[ Voor 28% gewijzigd door Lustucru op 12-03-2024 19:10 ]

De oever waar we niet zijn noemen wij de overkant / Die wordt dan deze kant zodra we daar zijn aangeland


Acties:
  • 0 Henk 'm!

  • dix-neuf
  • Registratie: Juli 2018
  • Niet online
Lustucru schreef op dinsdag 12 maart 2024 @ 19:06:
of als variant in een copy paste aktie. Wijzig in de macro van @dix-neuf de paste regel:
code:
1
Range("C" & acr + 1 & ":I" & acr + 1).PasteSpecial Paste:=xlPasteValues
Die +1 is - denk ik - niet de bedoeling.
Als ik de vragensteller goed begrijp wil hij, beginnend in rij 3, het bereik C:i mét formules telkens kopiëren naar 1 rij lager. De formules uit de gekopieerde rij verwijderen zou (dacht ik) niet nodig zijn, maar als dat toch gewenst is, dan moet aan mijn macro 1 regel (de vijfde) worden toegevoegd. De macro wordt dan:

code:
1
2
3
4
5
6
7
8
9
Sub macro1()
Dim acr As Integer
acr = ActiveCell.Row
Range("C" & acr & ":I" & acr).Copy
Range("C" & acr + 1 & ":I" & acr + 1).PasteSpecial Paste:=xlPasteFormulas
Range("C" & acr & ":I" & acr).PasteSpecial Paste:=xlPasteValues
Application.CutCopyMode = False
Range("C" & acr + 1).Activate
End Sub


Om de macro uit te voeren: een willekeurige cel in het bereik C:i in de te kopiëren rij selecteren en dan opdracht tot uitvoer geven.

Acties:
  • 0 Henk 'm!

  • Lustucru
  • Registratie: Januari 2004
  • Niet online

Lustucru

26 03 2016

dix-neuf schreef op woensdag 13 maart 2024 @ 09:35:
[...]

Die +1 is - denk ik - niet de bedoeling.
Zou best kunnen. ik heb je macro verder niet in detail geanalyseerd en zag een paste-aktie. Daarvan heb ik pasteValues gemaakt.

[ Voor 17% gewijzigd door Lustucru op 13-03-2024 14:43 ]

De oever waar we niet zijn noemen wij de overkant / Die wordt dan deze kant zodra we daar zijn aangeland

Pagina: 1