Originariamente inviato da alessio.82
Ok, praticamente così dovrebbe partire il codice perchè in ascii il 13 corrisponde all'invio,
ma dovendo prima fare un controllo sulla textbox e controllare che siano stati immessi i 13 caratteri numerici del barcode? il 13 si ripete troppe volte, ma ho capito, solamente che prima di far partire il tutto, dovrebbe verificare se nella textbox c sono 13 caratteri.

Spero di essere stato chiaro.
codice:
If TextBox8.Value = "" Then
MsgBox "INSERIRE N. codice"
TextBox8.SetFocus
Exit Sub
End If

Sheets("Fogliox").Activate



Sheets("Fogliox").Select
trovacodice = Application.WorksheetFunction.CountIf(Range("AG9:AG20000"), TextBox8.Value)
If trovacodice <> 0 Then

Range("AG8").Select
Do
ActiveCell.Offset(1).Select
Loop Until ActiveCell.Value = UserForm4.TextBox8.Text
ActiveCell.Offset(0, -28).Select
X = ActiveCell.Address
cliente = ActiveCell.Value

ActiveCell.Offset(0, 4).Select
articolo = ActiveCell.Value

ActiveCell.Offset(0, 4).Select
colore = ActiveCell.Value

ActiveCell.Offset(0, 8).Select
j = ActiveCell.Value

ActiveCell.Offset(0, 2).Select
npezzi = ActiveCell.Value

ActiveCell.Offset(0, 8).Select
w = ActiveCell.Value

ActiveCell.Offset(0, -4).Select
z = ActiveCell.Value

ActiveCell.Offset(0, 4).Select
Taglia = ActiveCell.Value
Y = ActiveCell.Address
Taglia = ActiveSheet.Name
'Range(X & ":" & Y).Select
'Selection.Cut
UserForm4.TextBox1 = cliente
UserForm4.TextBox2 = articolo
UserForm4.TextBox3 = colore
'UserForm4.TextBox9 = j
UserForm4.TextBox5 = npezzi
UserForm4.TextBox6 = w
UserForm4.TextBox7 = z
'UserForm4.TextBox10 = Taglia
UserForm1.Show

TextBox1.Value = ""
TextBox2.Value = ""
TextBox3.Value = ""
'TextBox4.Value = ""
TextBox5.Value = ""
TextBox6.Value = ""
TextBox7.Value = ""
TextBox8.Value = ""
'TextBox9.Value = ""
'TextBox10.Value = ""
Range("A1").Select

    
 
Else

'att = att + 1  'si incrementa un numeratore di una unità ad ogni foglio scorso
If trovacodice = 0 Then 'quando il numero dei fogli coincide con i fogli totali meno quelli esclusi dalla ricerca scrivi
MsgBox "Cartello non trovato o codice errato. Controllare il numero e riprovare"
    
    End If
        End If
        

Sheets("fogliox").Select
Range("Aa3").Select
Praticamente vi ho postato il codice che deve partire una volta che ha controllato che nella textbox8 c siano 13 caratteri numerici.
Tutto questo xchè praticamente per come uso la procedura adesso, si apre la userform ho il setfocus sulla textbox8, leggo con il lettore il codice a barre (quindi i 13 carattri vengono immessi automaticamente da lettore), a quel punto deve partire tutta la procedura da codice sopra riportata.

grazie
Ciao,
potresti utilizzare la funzione Len che restituisce il numero di caratteri immessi (car=len(txtbox) se car=13 vai avanti), poi la funzione int che restituisce l'intero del numero.
Con vba non ho molta pratica, io con vb6 faccio così senza utilizzare ne Int ne Len

dopo la pressione del tasto invio:

Selec campi from tabella Where campo codice= codice rilevato dalla textbox

se la query ti restituisce un recordset con almeno un elemento procedi...

Ciao