Code erreur
Shangoat Messages postés 12 Statut Membre -
bonjour je suis débutant en vba j'aimerai écrire une fonction pour identifier les personnes...je veux faire un déplacement i,j
par exemple pour la 1ère ligne quand i vaut 1 je veux pouvoir faire un déplacement par colonne genre j varie
ensuite que le processus recommence quand je passe à la ligne suivante jusqu'à ce que je finisse l'enregistrement
voilà mon code
Function Identification() As String
Dim nom, prénom, lieunaissance As String
Dim datenaissance As Date
Dim macellule As Range
Dim i, j As Integer
For i = 1 To 3
For j = 0 To 3
nom = InputBox("Veuillez saisir votre nom")
Set macellule = Range("c2").Offset(i, j)
macellule.Value = nom
prénom = InputBox("Veuillez saisir votre prénom")
Set macellule = Range("c2").Offset(i, j)
macellule.Value = prénom
datenaissance = InputBox("Veuillez saisir votre date de naissance")
Set macellule = Range("c2").Offset(i, j)
macellule.Value = datenaissance
lieunaissance = InputBox("Veuillez saisir votre lieu de naissance")
Set macellule = Range("c2").Offset(i, j)
macellule.Value = lieunaissance
Next j
Next i
End Function
toutees vos aides seront les bienvenues
- Code erreur
- Code ascii - Guide
- Code puk bloqué - Guide
- Comment déverrouiller un téléphone quand on a oublié le code - Guide
- Code activation windows 10 - Guide
- Scanner qr code pc - Guide
1 réponse
bonjour,
merci de tenir compte de ceci quand tu partages du code: https://codes-sources.commentcamarche.net/faq/11288-poster-un-extrait-de-code
Ton code fonctionne bien? As-tu une question?
Moi, je supprimerais j et sa boucle, et je mettrais les nombres de 0 à 3 à la place de j, dans offset().
non justement...
au lieu de
Set macellule = Range("c2").Offset(i, j) macellule.Value = nomtu peux aussi écrire
Range("c2").Offset(i, j) = nomFunction Identification() As String Dim nom, prénom, lieunaissance As String Dim datenaissance As Date Dim macellule As Range Dim i, j As Integer For i = 1 To 3 For j = 0 To 3 nom = InputBox("Veuillez saisir votre nom") Set macellule = Range("c2").Offset(i, j) macellule.Value = nom prénom = InputBox("Veuillez saisir votre prénom") Set macellule = Range("c2").Offset(i, j) macellule.Value = prénom datenaissance = InputBox("Veuillez saisir votre date de naissance") Set macellule = Range("c2").Offset(i, j) macellule.Value = datenaissance lieunaissance = InputBox("Veuillez saisir votre lieu de naissance") Set macellule = Range("c2").Offset(i, j) macellule.Value = lieunaissance Next j Next i End Functionpour la 1ère ligne quand i vaut 1 je veux pouvoir faire un déplacement par colonne au lieu de cela ça écrase la valeur de la 1ère case
Bonjour à vous deux,
C'est normal puisque j vaut 0 donc tu ne décalera pas vers la droite pour y mettre ta valeur.
Avec cette instruction ça devrait fonctionner: