Bertjens48
Gebruiker
- Lid geworden
- 22 okt 2018
- Berichten
- 9
Hallo allen,
Ik ben momenteel een voorraad overzicht aan het maken. Onderdeel van dit bestand is een tabblad met alle data van de diverse producten en grondstoffen die besteld worden bij div. leveranciers. Om nieuwe producten te verwerken is een formulier samengesteld waarbij alle variabele ingevuld kunnen worden. Via onderstaande code worden alle gegevens al verwerkt in een nieuwe rij bij de juiste kolom. Het lukt me echter niet om een uniek product code samen te stellen.
De insteek zou als volgt moeten zijn:
Alle producten worden onderverdeeld in een 7 categorieën. Afhankelijk van de categorie zal het product nummer bestaan uit een letter en getallen (3 cijfers), bijvoorbeeld b008 = een bepaalde doos/box). In het formulier wordt een categorie aan het product gekoppeld. Via VBA zou dan het eerst volgende nummer gekoppeld moeten worden, in het geval van een nieuw doos wordt het dus b009 enz. Ik weet echter niet waar ik moet beginnen.
De beschikbare categorieën
Disposables = K
Dozen = B
Folie = F
Inject = I
Labels = S
Overige = O
Schalen = T
Alle product codes worden vermeld in rij B, oftewel 2de kolom van de tabel.
Onderstaande code wordt gebruikt om de gegeven uit het formulier over te nemen in het bestand.
Kunnen jullie mij verder helpen met dit vraagstuk?
Alvast bedankt.
Ik ben momenteel een voorraad overzicht aan het maken. Onderdeel van dit bestand is een tabblad met alle data van de diverse producten en grondstoffen die besteld worden bij div. leveranciers. Om nieuwe producten te verwerken is een formulier samengesteld waarbij alle variabele ingevuld kunnen worden. Via onderstaande code worden alle gegevens al verwerkt in een nieuwe rij bij de juiste kolom. Het lukt me echter niet om een uniek product code samen te stellen.
De insteek zou als volgt moeten zijn:
Alle producten worden onderverdeeld in een 7 categorieën. Afhankelijk van de categorie zal het product nummer bestaan uit een letter en getallen (3 cijfers), bijvoorbeeld b008 = een bepaalde doos/box). In het formulier wordt een categorie aan het product gekoppeld. Via VBA zou dan het eerst volgende nummer gekoppeld moeten worden, in het geval van een nieuw doos wordt het dus b009 enz. Ik weet echter niet waar ik moet beginnen.
De beschikbare categorieën
Disposables = K
Dozen = B
Folie = F
Inject = I
Labels = S
Overige = O
Schalen = T
Alle product codes worden vermeld in rij B, oftewel 2de kolom van de tabel.
Onderstaande code wordt gebruikt om de gegeven uit het formulier over te nemen in het bestand.
Code:
Private Sub CommandButton2_Click()
Dim i As Long
Dim emptyRow As Long
'laatste cel selecteren
emptyRow = Sheets("Product info").Cells(Rows.Count, "B").End(xlUp).Row + 1
'Informatie overnemen
'Nieuwe product code samenstellen.
'Overige gegevens invullen
'product gegevens
Cells(emptyRow, 6).Value = txtLeverancier.Value
Cells(emptyRow, 3).Value = txtLeveranciernr.Value
Cells(emptyRow, 4).Value = txtOmschrijving.Value
Cells(emptyRow, 5).Value = cmbCategorie.Value
If optVoorraadJa.Value = True Then
Cells(emptyRow, 7).Value = "Yes"
Else
Cells(emptyRow, 7).Value = "No"
End If
'Levertijd & Opmerkingen
Cells(emptyRow, 8).Value = txtLevertijdDag.Value
Cells(emptyRow, 8).Value = txtLevertijdWeek.Value
Cells(emptyRow, 10).Value = txtLevertijdOpmerking.Value
'Inhoud Per eenheid
Cells(emptyRow, 12).Value = cmbTeleenheid.Value
Cells(emptyRow, 13).Value = txtInhoudTeleenheid.Value
Cells(emptyRow, 14).Value = txtInhoudPallet.Value
'Afmetingen & Kenmerken
Cells(emptyRow, 17).Value = txtLengte.Value
Cells(emptyRow, 18).Value = txtBreete.Value
Cells(emptyRow, 19).Value = txtDiepte.Value
Cells(emptyRow, 16).Value = txtKleur.Value
'prijs
Cells(emptyRow, 20).Value = txtPrijs.Value
Cells(emptyRow, 21).Value = txtStuks.Value
If cmbKostensoort.Value = "Fileer" Then
Cells(emptyRow, 23).Value = 1
If cmbKostensoort.Value = "Inject" Then
Cells(emptyRow, 23).Value = 3
If cmbKostensoort.Value = "Overige" Then
Cells(emptyRow, 23).Value = 6
End If
End If
End If
End Sub
Kunnen jullie mij verder helpen met dit vraagstuk?
Alvast bedankt.