Buongiorno a tutti,
grazie per avermi accettato, sono nuovo, questo è il mio primo post e sono un super "noob" della programmazione...
Detto questo, sto cercando di mettere in piedi una funzione che partendo dalla UserForm1 una volta cliccato il tasto 'OK':
1. legga il nome inserito da me nel campo UserForm1.TextBox1
2. legga il cognome inserito da me nel campo UserForm1.TextBox2
3. controlli che nelle colonne B (nome) e C (cognome) del foglio Sheet1 non esita quel nominativo (nome e cognome) e se esistesse restituisca una MsgBox con scritto 'Già Inserito', altrimenti copi il nome ed il cognome nella prima riga disponibile delle colonne B e C
La logica che ho usato è:
1. chiedi di complare tutti i campi
2. controlla che non ci sia il cognome (Colonna C), se non esite scrivi nome e cognome nella prima riga libera
3. se trova il cognome controlla che il nome sia diverso
3a. se il nome è uguale restituisci una MsgBox con scritto 'Gi� Inserito'
3b. se il nome è diverso scrivi nome e cognome nella prima riga libera (qua � dove sono in difficolt�)
Copio il codice
codice:
Sub Aggiungi()
Dim Nam, Sur, z, d
Dim us As Long
Set Nam = UserForm1.TextBox1
Set Sur = UserForm1.TextBox2
Set z = Sheets("Sheet1").Range("c2:c150").Find(Sur)
If UserForm1.TextBox1 = "" Or UserForm1.TextBox2 = "" Then
MsgBox ("Compila i campi")
Else
If z Is Nothing Then
ur = Sheets("Sheet1").Range("C" & Rows.Count).End(xlUp).Row
Sheets("Sheet1").Range("C" & ur + 1).Value = Sur
Sheets("Sheet1").Range("B" & ur + 1).Value = Nam
Else
For Each z In Sheets("Sheet1").Range("c2:c150")
If Sheets("Sheet1").Cells(z.Row, z.Column - 1) = Nam And Sheets("Sheet1").Cells(z.Row, z.Column) = Sur Then
MsgBox ("Già Inserito")
Else
ur = Sheets("Sheet1").Range("C" & Rows.Count).End(xlUp).Row
Sheets("Sheet1").Range("C" & ur + 1).Value = Sur
Sheets("Sheet1").Range("B" & ur + 1).Value = Nam
Exit For
End If
Next
End If
End If
End Sub
La parte in rosso è quella dove faccio pasticcio, se non inserisco quella la funzione gira benone, ma qualora ci fossero due persone con il cognome uguale ma il nome diverso non aggiunge il nuovo nominativo all'elenco.
Riuscite ad aiutarmi per favore?
Grazie,
TheNoobes