Locatie vullen met waarden met VBA in excel

Status
Niet open voor verdere reacties.

lvisser

Gebruiker
Lid geworden
23 dec 2021
Berichten
66
ik wil een opslag vullen met een aantal soorten goederen.
de opslag is in G7:J13 en bevat in het voorbeeld 28 plekken, onderverdeeld in rijen en vakken.
de goederen met hun aantallen in Kolom A en B.

nu krijg ik een deel van de opslag wel gevuld met goederen, maar dit is niet echt dynamisch, als bijvoorbeeld A niet 1 is maar 2 of iets anders werkt het al niet. ik gebruik nu een hulptabel in N7:Q13.

de vraag is, kan dit eenvoudiger met VBA?

de locatie waar de goederen uiteindelijk belanden, kolom C kan ik met een index er wel weer uit halen..

Met de ALS functie kom ik een eind, maar kom ik er niet uit ...
 

Bijlagen

Ziet er prima Uit!! ik ben zelf even bezig geweest met wat uitbreiding, dat haal ik er wel uit, maar hoe kan ik de volgorder veranderen ?
zie het bestandje, ik wil de Spullen A niet op 1 - 123 hebben staan, maar op 1 - 234 net aan de andere kant van de vakken vullen.
regel 2 wordt dan 2-1 E, 2-2 E, 2-3 D en 2-4 C etc. wat moet er dan veranderd worden ?
 

Bijlagen

ok, en de kolom C ook in die volgorde? dus dat 1-2 vooraan staat ?
in dat stuk code zie ik niet direct iets van volgorde..
 
DANK, ik ga proberen de code te begrijpen en het te gebruiken !!
 
zie plaatje. als er in kolpm A unieke waarden staan gast het goed, maar als ik meerdere A's in dit geval er neerzet krijg ik rare locaties terug.. 4-43 bijvoorbeeld ?
 

Bijlagen

  • Knipsel.JPG
    Knipsel.JPG
    74,8 KB · Weergaven: 16
Werkt prima ... totdat ik op een ander blad iets aanroep, dan is hij de locaties weer kwijt.
ik heb 2 opslagen aangemaakt, die werken beide met een eigen macro(knop) dat gaat allemaal prima, totdat ik op een ander blad iets doe.
Klik ik dan op het een van beide macro knoppen, dan heb ik in beide opslagen de locaties weer.. dus 1 en 2 krijgen dan weer data ondanks dat ik maar 1 van beide klik..
 
dat heb ik als onderstaande gedaan, en dan de andere macro met andere gegevens natuurlijk.
wat moet er dan nog meer aangepast worden? Ze werken wel met de nieuwe data ? alleen zijn de locaties kwijt na ergens anders iets doen.
ik heb al zitten speuren bij locator, maar kom er niet echt uit.

Sub Dock1()
Dim Rng As Range
Dim WorkRng As Range
Dim Mlist As Variant
Dim i As Integer, j As Integer, k As Integer
On Error Resume Next
Dim Arr() As Variant
ReDim Arr(0 To 0)
Range("DR6:DU18").ClearContents

For Each cl In Range("DR24:DR" & Cells(Rows.Count, "DR").End(xlUp).Row)
r = cl.Offset(, 1).Value
For i = 1 To cl.Offset(, 1).Value
Arr(UBound(Arr)) = cl.Value
ReDim Preserve Arr(UBound(Arr) + 1)
Next
Next
ReDim Preserve Arr(LBound(Arr) To UBound(Arr) - 1) 'Deallocate the last, unused element

q = 0
For Each cl In Range("DR6:DU18")
x = cl.Address
Range(x) = Arr(q)
q = q + 1
Next


End Sub
Function Locator(Soort, Aantal)

x = Aantal.Row - 1
Set cc = Range("DS23:DS" & x)
b = Application.WorksheetFunction.Sum(cc)
cltel = 0
Application.Volatile
Dim Loc As Variant

For Each cl In Range("DR6:DU18")
cltel = cltel + 1
If cltel > b Then
If cl = Soort Then
teller = teller + 1
rr = Cells(cl.Row, "DV").Value
cc = Cells(5, cl.Column).Value
Loc = "1 - " & rr & "-" & cc & Loc
If Aantal > teller Then Loc = ";" & Loc
If teller = Aantal Then GoTo fini
End If
End If
Next
fini:
Locator = Loc
End Function
De macro's moeten aangepast worden in je nieuw bestand
 
Zonder het bestand te zien is de fout niet te ontdekken
Controleer eens of alles correct is
Code:
Sub Dock1()
Range("DR6U18").ClearContents>>>>>>>>>>>>>>>Range("DR6:DU18").ClearContents
For Each cl In Range("DR24R" & Cells(Rows.Count, "DR").End(xlUp).Row) >>>>>>>>>>>>>>>For Each cl In Range("DR24:DR" & Cells(Rows.Count, "DR").End(xlUp).Row) 
For Each cl In Range("DR6U18") >>>>>>>>>>>>For Each cl In Range("DR6:DU18")
End Sub

Function Locator(Soort, Aantal)

Set cc = Range("DS23S" & x)>>>>>>>>>>>>>>>>>>>>Set cc = Range("DS23:DS" & x)
For Each cl In Range("DR6U18")>>>>>>>>>>>>>>For Each cl In Range("DR6:DU18")
End Function
 
Laatst bewerkt:
bestand

op tabblad Cellen_vers staan de opslag locaties met de 2 macro's. klikken op een Dock geeft de locaties weer.
vervolgens klikken op blad PlanningOverzicht (Cel C22 bijvoorbeeld) geeft dat de locaties op het blad Cellen_vers verdwenen zijn ..
 

Bijlagen

klikken op rit of een cel met een waarde in tabblad PlanningOverzicht maakt nog steeds dat de locaties verdwijnen.

Wat heb je aan gepast ?
als ik het bestand wat doe zie ik niet dat er iets gewijzigd is ..
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan