• 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.

Wijzigen van waarde in een opzoektabel

Status
Niet open voor verdere reacties.

VanBasicNaarExe1

Gebruiker
Lid geworden
21 jan 2018
Berichten
43
Ik heb een tabel met voorraad-gegevens.
Daar wil ik een waarde van veranderen.

Ik krijg met MATCH (of VERGELIJKEN) de huidige waarde te zien.
Dan wil ik de nieuwe waarde in een veld invoeren om daarmee de oude waarde te overschrijven.

Op het bestandje is dat wat beter te zien wat ik bedoel.
Ik denk dat ik dat met behulp van een macro moet doen, alleen weet ik niet hoe ik de oude waarde kan overschrijven.



Hoe kan ik dat het beste voor elkaar krijgen?


Jouw hulp zou fantastisch zijn.


Alvast bedankt.
Martin
 

Bijlagen

bv.
Code:
Sub wijzig()
 Cells(Application.Match([j2], [b1:b6], 0), 4) = [j5]
End Sub
 
YES, We zijn er bijna....

Bedankt voor je reactie !
Ik zie inderdaad iets geweldigs gebeuren.

Perfecte voorzet.

Met jouw hulp kreeg ik de eerste kolom gewijzigd (ook al koos ik voor 'locatie')
Maar met een beetje aanhoudend proberen hebben wij samen bereikt waar ik al zo lang op zat te broeden. Ik heb jouw formule iets aangepast.


En om bij het klikken op de knop weer een leeg vakje te krijgen heb ik het zo gedaan:


- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Sub wijzigen()
Cells(Application.Match([j2], [b1:b6], 0), 1 + [k1]) = [j5]
'
Range("J5").Select
ActiveCell.FormulaR1C1 = ""
Range("J5").Select

End Sub



- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -


Ik sta als een kind te glunderen.
Bedankt Harry !!!


Martin
 
Laatst bewerkt:
Hè ??

Mijn mond valt een stukje verder open. Dit is wel heel erg:" van Basic naar EXCEL "

Dit is ook een hele mooie manier, alleen snap ik er totaal niets van.
Ik staar mij suf op deze 'macro'. Maar het werkt ook prachtig.

Ik proef dat wanneer ik dit door heb, ik hele leuke dingen kan doen.
Misschien kan ik wel een logbestand koppelen aan de macro, zodat iedere aanpassing geregistreerd staat op een tabblad die ik daarvoor aanmaak. Maar zover ben ik nog niet.
Ik zit er wel dicht tegen aan.

Maar eerst dit ontrafelen:

Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, [j5]) Is Nothing Then
' < als er niets verandert in [J5] >

Application.EnableEvents = False
Set a = Range("b3:b6").Find([j2].Value)

If Not a Is Nothing Then
r = Range([b3], a).Rows.Count
End If

Set b = [b2:g2].Find([k2].Value)

If Not b Is Nothing Then
k = Range([c2], b).Columns.Count
[q1] = k
End If

[b2].Offset(r, k) = [j5]
[j5].ClearContents
End If
Application.EnableEvents = True
End Sub



Maar op dit moment doorzie ik dit programmatje niet.

Martin
 
Laatst bewerkt:
Het is ook een bijzondere schrijfwijze.

In de bijlage een vereenvoudigde code.
 

Bijlagen

Wat mooi dat jullie zo meedenken !

Harry,

Ik zie dat de macro niet meer onder macro's te vinden is in het xlsb-bestand. Waar kan ik die terugvinden?
Waar vind ik die bijlage die je bedoelde?


Martin
 
harry zijn macro staat net als de mijne achter het blad

hier een voorbeeld van een log met uitleg in de macro
 

Bijlagen

Wil jij mij naar die macro's leiden? Ik zie ze nergens.
Ik zie nu een 2e tabblad met een perfect werkend logbestand.

Maar ik heb geen idee hoe ik dit zelf kan programmeren.
Het voelt een beetje als iets wat tussen wanhoop en marteling in zit. ;-)

Martin
 
Gevonden ! ! !

gevonden.jpg

Ik kende die optie helemaal niet.

Bedankt voor jullie hulp. Ik ga hier eens lekker mee aan de gang.

Martin
 
Status
Niet open voor verdere reacties.

Nieuwste berichten

Terug
Bovenaan Onderaan