Erreur d'exécution '1004' erreur définie par l'application o
f894009 Messages postés 17277 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
J'ai cette erreur qui apparait quand je remplie mon userform et appuie sur mon bouton valider. Si vous voulez les donnees inscrite dans le userform sont censé s'écrire sur la premiere ligne vide de ma feuilpropriétaires ( il y a la ligne 1 qui est l'en tete) Je vais vous donner le code du userform et du module
Voici le code du module :
Public LigneAModifier As Long 'Recupere l'indice de la ligne a modifier ou a supprimer d'un fichier de données'
Public AjouterouModif As Boolean 'True si Ajout et False si modification'
'Fonction DerLigne pour determiner la ligne d'ajout d'une nouvelle information, ou la derniere ligne de notre tableau de donnees
Function DerLigne(Nomfeuille As String, Col As String) As Long
DerLigne = 1
Do
DerLigne = DerLigne + 1
Loop Until Sheets(Nomfeuille).Range(Col & DerLigne).Value = ""
End Function
'Fonction de recherche de doublons
Function RechercheDoublons(Nomfeuille As String, ColRech As String, ValeurRecher As String, i As Long) As Boolean
RechercheDoublons = False
Dim j As Long
j = 1
Do
j = j + 1
If Not Sheets(Nomfeuille).Range(ColRech & j).Value = "" Then
If (Sheets(Nomfeuille).Range(ColRech & j).Value = ValeurRecher) And (i <> j) Then
RechercheDoublons = True
End If
End If
Loop Until Sheets(Nomfeuille).Range("A" & j).Value = ""
End Function
Voici le code du userform:
Private Sub CmdValider_Click()
Dim i, j As Long
If AjoutouModif = True Then
i = DerLigne(FeuilPropriétaires.Name, "A")
j = 1
Else
i = LigneAModifier
j = i
End If
'Controle de saisie'
If Me.TextBox1.Value = "" Then 'zone de saisie du nom ne doit pas être vide'
MsgBox "Veuillez saisir le nom avant de continuer !", vbCritical Me.TextBox1.SetFocus
ElseIf Me.TextBox2.Value = "" Then 'zone de saisie du contact ,ne doit pas être vide'
MsgBox "Veuillez saisir le contact avant de continuer !", vbCritical
Me.TextBox2.SetFocus
ElseIf RechercheDoublons(FeuilPropriétaires.Name, "A", Me.TextBox1.Value, j) = True
Then 'Si doublons deetecté'
MsgBox "Ce nom de propiétaire existe déja dans notre base de données, veuillez ajouter un indice de différentiation si il s'agit de deux personnes différentes.", vbCritical
Else
For j = 1 To 4
FeuilPropriétaires.Cells(i, j).Value = Me.Controls("TextBox" & j).Value
Next j
Unload Me
End If
End Sub
- Erreur d'exécution '1004' erreur définie par l'application o
- Comment recuperer whatsapp supprimé par erreur - Guide
- Nommez une application d'appel vidéo ou de visioconférence - Guide
- O&o shutup10 - Télécharger - Confidentialité
- Erreur 0x80070643 - Accueil - Windows
- Desinstaller application windows - Guide
8 réponses
Bonjour,
Votre fichier serait plus interessant que du code
Pour transmettre un fichier,
Veillez a ce qu'il n'y ait PAS DE DONNEES CONFIDENTIELLES
il faut passer par un site de pièce jointe tel que cjoint.com
Allez sur ce site : http://cjoint.com
Clic sur parcourir,
Cherche ton fichier,
clic sur ouvrir,
Clic sur "Créer le lien cjoint",
Copier le lien,
Revenir ici le coller dans une réponse...
Voici le lien cjoin : https://www.cjoint.com/c/MJfuubNi8eJ
Pour mieux expliquer, en faites je suis entrain de créer un Excel de gestion.
Il est pas terminé vu que je bloque sur le userform utilisé pour encoder les informations dans la feuille intitulé (propriétaires). Pour avoir accès à ce userform il faut être sur la feuille accueil, appuyé sur le bouton propriétaires puis dans la fenêtre qui s’ouvrira il faudra appuyé sur ajoute et là il y a erreur 1004.
En essayant plusieurs code pour pouvoir déterminer le bug, j’ai remarqué dans la console que la variable i est égale à 0 alors que ça ne devrait pas être le cas. J’ai donc du mal de comprendre voilà tout.
‘merci d’avance
Bonjour,
Ok, je regarde la chose
Suite:
Pour info
DerLig = Range("A" & Rows.Count).End(xlUp).Row
C'est quand meme plus rapide que faire une boucle sur une colonne
Re,
J'ai trouve, je ne lancai pas la bonne UF.
Je n'ai aucune erreur
Cependant, toutes les UF fmTable..... la listbox se remplit avec un tableau dedie. Probleme la facon de remplir ces tableaux doit etre avec des intructions propres aux tableaux ou modifier la facon de remplir ces ListBox
Perso, je n'utilise pas deux UF pour Saisie, ajout, modif, supprime
Bonjour,
vous n’avez donc pas d’erreur quand vous remplissez la fenêtre fmsaisie_propietaires et que vous appuyez sur le bouton valide. Et pour répondre à votre question normalement si on remplie directement le tableau dans la feuille propriétaires, on voit que la listbox se remplie. Si j’avais bien compris mon problème c’est qu’il ne trouve pas les cellules ou il doit remplir. Mais si vous me dites que vous avez pas d’errer pouvez vous me renvoyer le programme si vous avez changé.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre questionRe,
En effet, il y a bien une erreur, mais pas que
1/ vous avez ecrit
For j = 1 To 4 FeuilPropriétaires.Cells(i, j).Value = Me.Controls("TextBox" & j).Value Next j
Alors que cela doit etre
For j = 1 To 4 Worksheets(FeuilPropriétaires.Name).Cells(i, j).Value = Me.Controls("TextBox" & j).Value Next j
J'avais corrige sans penser que c'etait l'erreur recherchee et ensuite j'ai fais des modifs pour les boucle de recherche ligne et doublon. Je viens de modifie votre fichier d'origine restait le probleme du boolean AjoutouModif = True qui s'appelle en realite
Public AjouterouModif As Boolean 'True si Ajout et False si modification'
Par contre, j'ai un probleme au bout de 3 ou 4 ajouts, les suivants ne sont pas dans le tableau Table_proprietaire mais en dessous donc plus affiches dans la listbox
https://www.cjoint.com/c/MJgqbU2RhRg
Testez et dites si chez vous c'est de meme. De plus ca plante Excel!
Avec "mon" fichier, en dehors code du boolean qu'il faut que je rajoute, en utilisant un code un peu modifie y a pas ce probleme et pas de plantage. Mais le mieux serait d'utiliser les instructions de gestion de tableau structure
Moi je n’ai pas votre problème en utilisant votre fichier car en faites je suis toujours bloqué avec l’erreur 1004. Voici les captures d’écrans: https://www.cjoint.com/c/MJgxN5Sd8EJ
Bonjour,
Je regarde la chose
Bonjour,
Pas fait, verrai aujourd'hui.
Les Tableaux structures sont indispensable ou pas?
En dernier recours, c'est la solution possible