1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50
| ' Fonction de capture des infos du userform pour dépôt des étiquettes dans la batchlist
' Cet adapter dépose une ou deux étiquettes dans la batchlist selon que la case +1 est cochée ou non
' @param BatchListFirstCell cellule de la batchlist dans laquelle déposer la premiètre étiquette
' @param Target Cellule supérieure gauche de la première étiquette copiée
'
' @Return True si la copie doit avoir lieu, sinon False
Function CatchDatasFromUserFormForBatch_X1(BatchListFirstCell As Range) As Boolean
Load uLabelBatch_X1 ' Chargement du userform nommé uLabelBatch
With uLabelBatch_X1
.TextBox1 = 10 ' Par défaut, le formulaire proposera 10 copies
.CheckBox1 = True ' par défaut, le +1 sera coché
End With
uLabelBatch_X1.Show ' Affichage
' Traitement en fonction du bouton cliqué (valeur de la variable, ou plutôt de la propriété Choice du formulaire)
If uLabelBatch_X1.Choice = "Validate" Then
'Transfert dans la batchlist du nombre d'étiquettes à imprimer
BatchListFirstCell.Value = uLabelBatch_X1.TextBox1 * 1
' Transfert de l'étiquette modèle
With BatchListFirstCell
.Cells(1, 2).Value = uLabelBatch_X1.ComboBox1.Text
.Cells(1, 3).Value = uLabelBatch_X1.ComboBox2.Text
.Cells(2, 2).Value = uLabelBatch_X1.ComboBox3.Text
.Cells(2, 3).Value = uLabelBatch_X1.TextBox3.Value
.Cells(3, 2).Value = uLabelBatch_X1.TextBox2.Value
.Cells(3, 3).Value = uLabelBatch_X1.ComboBox4.Text
.Cells(4, 2).Value = uLabelBatch_X1.TextBox4.Value
End With
' Si case +1 cochée, transfert de la nouvelle étiquette modifiées (la "+1") dans la batchlist
If uLabelBatch_X1.CheckBox1 Then
Set BatchListFirstCell = BatchListFirstCell.Offset(4) ' Décalage dans la batchlist pour la nouvelle étiquette
BatchListFirstCell.Value = 1 ' On n'imprimera qu'une étiquette "en plus"
' Transfert des données de l'étiquette supplémentaire (à adapter à ton cas)
With BatchListFirstCell
.Cells(1, 2).Value = uLabelBatch_X1.ComboBox1.Text
.Cells(1, 3).Value = uLabelBatch_X1.ComboBox2.Text
.Cells(2, 2).Value = uLabelBatch_X1.ComboBox3.Text
.Cells(2, 3).Value = uLabelBatch_X1.TextBox3.Value
.Cells(3, 2).Value = uLabelBatch_X1.TextBox2.Value
.Cells(3, 3).Value = uLabelBatch_X1.ComboBox4.Text
.Cells(4, 2).Value = "Etiquette + 1" ' A adapter (illustre l'étiquette +1 différente)
End With
End If
End If
CatchDatasFromUserFormForBatch_X1 = (uLabelBatch_X1.Choice = "Validate") 'retour de la fonction selon le bouton cliqué (qui a modifié Choice)
Unload uLabel1 ' On décharge le formulaire
End Function |
Partager