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

Rij verplaatsen bij zetten van vinkje, naar een ander werkblad

Status
Niet open voor verdere reacties.

ollie50

Gebruiker
Lid geworden
3 nov 2019
Berichten
21
Hallo,

Ik probeer iemand even te helpen met een voorraad lijst.
Deze reeds gemaakt.
Nu is de opgave dat wanneer er een artikel is verkocht en dit wordt aan gegeven met een vinkje.
Dat deze dan automatisch gaat naar blad "verkocht" en de regel op blad voorraad verdwijnt.

Of nog mooier, dat ik de keuze heb uit 2 bladen, bv voorraad en verkocht.
Dan afhankelijk van de keuze hij wordt verplaatst naar het betreffende werkblad.

Al enorm gepuzzeld met de codes en tips van deze site, maar krijg het niet voor elkaar....

Wellicht dat iemand mij een zetje in de goede richting kan geven?

Alvast bedankt.
 

Bijlagen

Hi Emields,

Bedankt voor de snelle reactie!!
Hij gaat nu idd wanneer ik hem een vinkje geef een keuze voor waar hij heen moet. Top!
Alleen als ik en foutje maak, werkt dit niet op blad verkocht, als hij weer terug moet naar voorraad.
Maar ik ben hier al erg blij mee :)

Tot zover super bedankt!
 
zo voorkom je fouten.

en anders plaats je achter het blad dezelfde code. let wel op welke kolom je neemt want uw bladen zijn niet dezelfde van opmaak.
 

Bijlagen

Hi Emields,

Top en bedankt voor het mee puzzelen!
Ik heb nu inmiddels versie 3.
De opmaak van beide het zelfde gemaakt.
Echter verspringt de opmaak nu? Qua kleuren en kan hem ook niet aanpassen. Hij komt dan met een melding over jou formule.
Die wil ik eigenlijk niet beschadigen.
Ook gaat hij van verkocht naar voorraad niet terug als ik een x plaats?

Maar ben hier al erg blij mee :)

Bedankt!
 

Bijlagen

zo voorkom je fouten.

en anders plaats je achter het blad dezelfde code. let wel op welke kolom je neemt want uw bladen zijn niet dezelfde van opmaak.

Hi Emields,

Nu ik de opmaak heb gelijk gemaakt probeer ik jou trucje na te doen.
Zodat ik van verkocht ook naar een ander tabblad kan zetten.
Nu krijg ik dat niet voor elkaar. Ook nog even naar de tip over VBA gekeken van VenA.
Echter gaat dat net iets boven mijn pet, hoe graag ik het ook wil snappen.
Zou jij nog eens willen kijken naar "versie 3" :)

Alvast bedankt.
 

Bijlagen

Dat was goed geprobeerd, maar met opmaak gelijk zetten bedoelde ik niet enkel die kolommen verwijderen.
Op blad voorraad begint uw lijst in rij 10 op de andere bladen op rij 2, ik heb nu in de code het bereik aangepast op de andere bladen en nu zal het wel lukken.
 

Bijlagen

Hi Emields,

Allereerst super bedankt!
Ik probeer het ook te begrijpen en ben "redelijk" handig met Excel.
Maar dat VBA moet ik me echt eens in verdiepen. Erg interessant.

Ik ga iemand erg blij maken hiermee.
Nogmaals dank voor de hulp en zeer snelle reacties.

TOP!
 
Waarom geef je geen antwoord op mijn vragen?

VBA is er voor bedoeld om processen te automatiseren. Gebruik daarvoor alle beschikbare handige tools zoals tabellen.
In de module van Thisworbook
Code:
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
  If Not Intersect(Target, Sh.ListObjects(1).DataBodyRange.Columns(18)) Is Nothing And Target.Count = 1 Then
    Application.EnableEvents = False
    If LCase(Target) = "x" Then
      With Sh.ListObjects(1)
        ar = Sh.Cells(Target.Row, .Range.Cells(1).Column).Resize(, 18).Value
        UserForm1.Show
        .ListRows(Target.Row - .Range.Cells(1).Row).Delete
      End With
    End If
    Application.EnableEvents = True
  End If
End Sub

En nog wat meer aanpassingen.
 

Bijlagen

Laatst bewerkt:
Hi VenA,

Dank voor jou bericht.

Sorry dat ik jou vraag niet heb beantwoord.
Maar de eerste formule begreep ik niet helemaal.

Maar jij vroeg waarom ik het wilde verplaatsen en in plaats daarvan wilde filteren.
Maar ik dacht omdat ik ook de bedragen meeneem, dat dit met filteren niet goed gaat.

En door te verplaatsen heb je 2 bladen, 1 wat er nog is en een wat er is verkocht.
Dan dus in het eerste blad bovenaan, wat de totale inkoop en verkoop is.

Of bedoel je toch iets anders?
 
Ik zou het vooral heel simpel houden. 1 tabel waarin je de inkoop en verkoop vastlegt en een draaitabel om de gegevens te analyseren.
 

Bijlagen

Hi VenA,

Dank voor jou toelichting en bestand.
Ik begrijp wat je zegt en klinkt ook logisch.
Maar als ik iets toegvoeg of bij een product de verkocht datum invul.
Verandert er niets op de draai tabel?
Wat doe ik verkeerd.
 
Even rechts klikken in de draaitabel en op verversen oid klikken. (is het enige nadeel aan een draaitabel)
 
Hi VenA,

Inderdaad dan verspringt hij.
Ga ook zeker hier naar kijken! :)
Erg bedankt voor jullie hulp, ik kan hier zeker iets mee.

Voor nu als jullie er aan toe zijn alvast een fijn weekend!
 
Dat was goed geprobeerd, maar met opmaak gelijk zetten bedoelde ik niet enkel die kolommen verwijderen.
Op blad voorraad begint uw lijst in rij 10 op de andere bladen op rij 2, ik heb nu in de code het bereik aangepast op de andere bladen en nu zal het wel lukken.

Hi Emileds,

Dank zij jou heb ik een hele start gemaakt met wat ik wil hebben :)
Maar nu ik het zo goed als klaar heb zie ik wanneer ik een item naar verkocht plaats de formules niet mee gaan?
Dito wanner ik een product terug zet.

Ik weet niet of je met deze uitleg kunt begrijpen wat ik bedoel, maar in de bijlage het aangepaste bestand.

Alvast bedankt voor het meedenken :)
 

Bijlagen

Hi VenA,

Dank voor jou reactie en hulp, maar ik krijg dan een foutmelding?
Bij de woorden die ik blauw heb gemaakt heb ik het al geprobeerd.

Waar moet deze dan?

Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("z10:z1933")) Is Nothing Then
If Target.Count = 1 Then
If Target.Value = "x" Then
UserForm1.Show
End If
End If
End If
End Sub
 
Hi Ven A,

Zou je bij gelegenheid nog even kunnen aangeven waar ik de "range.copy" moet neerzetten.
Ik krijg het niet werkend. :)

Alvast bedankt.
 
Het verplaatsen staat in module1 daar zal je dus wat aan moeten passen. Gewoon in 1 tabel laten staan is veel beter heb je ook geen code nodig.
Waarom het zo raar gemaakt is weet ik niet maar het zal dan zoiets moeten worden.
Code:
Sub verplaatsen()
x = [s1].Value
'Sheets(x).Range("a1000").End(xlUp).Offset(1).Resize(, 25) = Selection.Offset(-1, -25).Resize(, 25).Value
Selection.Offset(-1, -25).Resize(, 25).Copy Sheets(x).Cells(Rows.Count, 1).End(xlUp).Offset(1)
Selection.Offset(-1).EntireRow.Delete
End Sub
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan