l’objet invoqué s'est déconnecté de ses clients

rudy dehaudt

XLDnaute Occasionnel
Bonjour, voici le message d'erreur que j'ai depuis cette après midi sur mon application :

erreur d'exécution'-2147417848 (80010108)':

l’objet invoqué s'est déconnecté de ses clients

ci dessous la ligne qui pose problème

Sheets("bon de commande 1").Copy before:=Sheets(Sheets.Count) 'copie l'onglet "Modèle" en premier

pourriez vous m’en dire plus ?
 

fhoest

XLDnaute Accro
Re : l’objet invoqué s'est déconnecté de ses clients

Bonjour,
désolé que ma solution n'as pu t'aider,
Pour ton problème actuel remplace Target.row par ActiveCell.Row
En fait ce qui se passe c'est qu'avant Target était défini dans ton code du doubleclick dans la parenthèse,maintenant que tu passes par un module il ne veut plus rien dire ce Target.et il est égale à la cellule active (si bien sur dans ton code avant cette ligne tu ne change pas de cellule)
tu rencontreras les mêmes problème pour les lignes suivantes avec l'instruction target.:)
edit bonjour tototiti2008, René
A+
 
Dernière édition:

rudy dehaudt

XLDnaute Occasionnel
Re : l’objet invoqué s'est déconnecté de ses clients

bonjour néné06 :

j'ai bien remplacer les " Target.row " par " PrivateCell.row " comme tu me la dit puis j'ai supprimer le code de la feuille "nvl commande" et j'ai placer ce code dans le module 5 :

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Mon_programme_dans_un_module
End Sub

'Module5

Public Sub Mon_programme_dans_un_module5()


Dim sh As Worksheet 'déclare la variable sh (SHeet)
Dim Lg As Long, cl As Byte ' Récupèrent les numéros de ligne et de colonne du double-clic

'si l'édition a lieu dans la 1ère cellule vide
Lg = PrivateCell.Row: cl = PrivateCell.Column
If cl = 1 And PrivateCell.Row = Range("A65536").End(xlUp).Row + 1 Then ' colonne A et 1ère cellule vide en colonne A
Cells(Lg, 1) = "bon de commande " & Val(Mid(Target.Offset(-1, 0), 17, 7)) + 1
Cells(Lg, 2) = Cells(Lg - 1, 2)
Cells(Lg, 2) = Replace(Cells(Lg - 1, 2), Right(Cells(Lg - 1, 2), 6), Format(Right(Cells(Lg - 1, 2), 1) + 1, ""))
Sheets("bon de commande 1").Copy before:=Sheets(Sheets.Count) 'copie l'onglet "Modèle" en premier
With ActiveSheet
.Name = Sheets("nvl commande").Range("A" & Lg) ' renomme l'onglet copié avec la valeur éditée
.Range("E1").Value = Sheets("nvl commande").Range("B" & Lg).Value ' recopie le n° de réclamation
.Range("G1") = Date ' Copie la date systeme
End With
Else ' sinon sort de la procédure
Cancel = True
End If
End Sub

ce qu'il ce passe c'est que le double clic ne crée rien..?..
 

rudy dehaudt

XLDnaute Occasionnel
Re : l’objet invoqué s'est déconnecté de ses clients

bonjour, néné06,phoest, staple1600 :

ActiveCell.Row pas PrivateCell.Row

cette partie = remplacer

ensuite :

Cells(Lg, 1) = "bon de commande " & Val(Mid(Target.Offset(-1, 0), 17, 7)) + 1

j'ai éssayer t'elle qu'elle , ça n'a rien donner de bon, puis j ai changer en :

Cells(Lg, 1) = "bon de commande " & Val(Mid(ActivateCell.Offset(-1, 0), 17, 7)) + 1

ça n'a rien donner de bon non plus

sa part en live du genre " la copie de " bon de commande 1 " viens se copier sur la feuille " nvl commande " ?

je me permet de rappelé que jusqu’à la ligne 320 de l'onglet "nvl commande" le fichier tourné très, très bien..?..

quand pensé vous ?
 

rudy dehaudt

XLDnaute Occasionnel
Re : l’objet invoqué s'est déconnecté de ses clients

nouveau bug : ( j'ai enregistre un nouveau fichier avec le code modifier ) avec un double clic dans l'onglet "nvl commande" le nom "bon de commande 12702" se met bien a la suite des autres mais la feuille n'est créer , puis je n'est plus accès a la colonne A avec la souris ??
 

Si...

XLDnaute Barbatruc
Re : l’objet invoqué s'est déconnecté de ses clients

salut

Code:
.Range("E1").Value = Sheets("nvl commande").Range("B" & Lg).Value
seul souci chez moi avec le fichier joint (cellules fusionnées :mad:) !
Sinon pas de problème avec ta macro même réécrite dans mon style et dans la page de code de la feuille "nvl commande"
Code:
Private Sub Worksheet_BeforeDoubleClick(ByVal R As Range, Cancel As Boolean)
  'si l'édition a lieu dans la 1ère cellule vide de A
  If R.Column = 1 And R.Row = Range("A65536").End(xlUp).Row + 1 Then ' colonne A et 1ère cellule vide en colonne A
    R = "bon de commande " & Val(Mid(R.Offset(-1, 0), 17, 7)) + 1
    R(1, 2) = Right(R(0, 2), 1) + 1
    Sheets("bon de commande 1").Copy before:=Sheets(Sheets.Count) 'copie l'onglet "Modèle" en premier
    With ActiveSheet
      .Name = R ' renomme l'onglet copié avec la valeur éditée
      .[E1] = R(1, 2) ' recopie le n° de réclamation
      .[G1] = Date ' Copie la date systeme
    End With
  End If
  Cancel = True
End Sub
 

fhoest

XLDnaute Accro
Re : l’objet invoqué s'est déconnecté de ses clients

Bonjour à tous,
tu as essayé en
ActiveCell.Row pas PrivateCell.Row

cette partie = remplacer

ensuite :

Cells(Lg, 1) = "bon de commande " & Val(Mid(Target.Offset(-1, 0), 17, 7)) + 1

j'ai éssayer t'elle qu'elle , ça n'a rien donner de bon, puis j ai changer en :

Cells(Lg, 1) = "bon de commande " & Val(Mid(ActivateCell.Offset(-1, 0), 17, 7)) + 1

ça n'a rien donner de bon non plus
C'est bien mais le problème c'est que tu mets Activatecell et NON Activecell comme j'ai inscrit plus haut.
Bonne soirée.
:)
 

fhoest

XLDnaute Accro
Re : l’objet invoqué s'est déconnecté de ses clients

Re,
Je pense que pour tous le monde cela serait beaucoup plus rapide et plus simple d'avoir un fichier sans données confidentiel qui permettrait de tester et de répondre encore mieux .
A bientôt.
 

néné06

XLDnaute Accro
Re : l’objet invoqué s'est déconnecté de ses clients

Re,
Je pense que pour tous le monde cela serait beaucoup plus rapide et plus simple d'avoir un fichier sans données confidentiel qui permettrait de tester et de répondre encore mieux .
A bientôt.
J'allais justement proposer cette solution car chez-moi, je lance le programme qui plante une premiere fois en me disant que VBA refuse de placer deux fois le même nom , je supprime l'onglet, je relance le test et le programme tourne normalement ?????

A+

René
 

néné06

XLDnaute Accro
Re : l’objet invoqué s'est déconnecté de ses clients

Bonsoir Staple 1600,

Certes, il y a une PJ de plus de 4 MO, avec je ne sais combien de feuilles !

Un petit fichier simplifié, avec les trois ou quatre feuilles nécessaires, serait plus facile à analyser pour la plupart d'entre nous.


A+

René
 

rudy dehaudt

XLDnaute Occasionnel
Re : l’objet invoqué s'est déconnecté de ses clients

bonjour et merci de votre implication sur la résolution de mon problème:
pour ce qui est du fichier simplifié se n'est pas un souci dans mettre un, mais il tourne très bien sauf à partir du bon de commande 12701 ( ligne 302 il me semble ) à partir de cette ligne il ne crée plus d'onglets ? mais je vous place une PJ car il doit bien y avoir une raison pour qu'il s'arrête à cette endroit et pas avant ?

merci
A+
 

Pièces jointes

  • bon de commande et reclamation vierge .xls
    281 KB · Affichages: 61
  • bon de commande et reclamation vierge .xls
    281 KB · Affichages: 68
  • bon de commande et reclamation vierge .xls
    281 KB · Affichages: 68

néné06

XLDnaute Accro
Re : l’objet invoqué s'est déconnecté de ses clients

Bonjour à tous,

@Rudy,
Pour info,le nombre de feuilles sur excel n'est pas limite,sauf par la mémoire disponible sur l,ordi.
Combien as tu de Ram ?
Faire des essais sur d'autres machines plus puissantes ?
Peut-être une piste ?

Je suis sur mon téléphone et ne peux tester

À+

Rene
 

rudy dehaudt

XLDnaute Occasionnel
Re : l’objet invoqué s'est déconnecté de ses clients

je pense en effet que le plus raisonnable et de reprendre un fichier vierge, je vais finir le mois de février ( ça fera 1 fichier pour 6 mois ) sans utilisé les macro , en fin de semaine je suis en vacances donc peut de manipulation du fichier, je vais quand même supprime le code contenu dans les onglet cela aura peut être un effet positif sur le fichier ( en même temps ça peut pas faire de mal ? )

mais qui c'est une autre solution peut émergé ? parce que le fond du problème reste la création des "bon de commande" qui ne se fait plus ? mais la mémoire et les Ram peuvent faire planter de cette manière peut être ?

A+
 

Discussions similaires

Statistiques des forums

Discussions
314 656
Messages
2 111 610
Membres
111 224
dernier inscrit
Test66