Probleme sur visual basic 6 excel

Résolu/Fermé
faboramix - 24 mars 2009 à 18:11
 faboramix - 25 mars 2009 à 16:59
Bonjour,

Je suis comptable dans une boite de broadcast, pour mes immobilisation j'ai créé sur excel comprenant un bouton (incliant mon probleme) pour transmettre par le biai des boite mail de différent collaborateurs les fiches qui auront remplis. Mais j'ai un probleme dans ma formule visual basic :

Dim cop As String
Dim chem As String

cop = Range("T2") & Range("D7")

chem = "P:\Engineering\Support\Opérations\Inventaire-Suivi_equipement\Fiches de bien\"

ActiveWorkbook.SendMail Recipients:=Array("<ital>destinataire
"), Subject:="Création/Modification Fiche de Bien " & Range("D7")

cop = Application.GetSaveAsFilename(chem & cop)

If chem <> True Then
ActiveWorkbook.SaveCopyAs chem = "P:\Engineering\Support\Opérations\Inventaire-Suivi_equipement\Fiches de bien\"
End If

ActiveWorkbook.Close
End Sub

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

End Sub


quand une personne execute ce code il ou elle recoit ce message d'erreur:

Erreur d'execution '13':
incompatibilité de type


et la ligne IF et en surlignée Jaune

avez vous une idée pour corriger mon probleme ???

si vous avez besoin de plus de détaille dites le moi..

Merci
A voir également:

4 réponses

gbinforme Messages postés 14946 Date d'inscription lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020 4 701
24 mars 2009 à 18:42
bonjour

Tu défini ta variable : Dim chem As String

Ensuite tu testes : If chem <> True

C'est normal que le type soit incompatible car "True" est Boolean.

Je ne vois pas bien pourquoi tu fais ce test car c'est "cop" qui est modifié mais il aurait le même souci.
0
en faite je me suis trompé dans le code que j'ai mentionné sur le forum, ce n'est pas "TRUE" MAIS "FALSE" quiu est mentionné dans mon code VB mais j'ai le même message d'erreur avec les deux formule...
0
lermite222 Messages postés 8724 Date d'inscription dimanche 8 avril 2007 Statut Contributeur Dernière intervention 22 janvier 2020 1 190
24 mars 2009 à 19:05
Bonjour,
Essaye en ajoutant/modifiant
Dim Retour 
Retour = Application.GetSaveAsFilename(chem & cop) 

If not Retour Then 
    ActiveWorkbook.SaveCopyAs  "P:\Engineering\Support\Opérations\Inventaire-Suivi_equipement\Fiches de bien\" 
End If 

A+
0
Bonjour et merci pour votre aide,

je viens de tester le code que tu ma transmit 'lermite222' mais lors de la sauvegard j'ai toujour le même message d'erreur... toute fois je te redonne le résultat au cas ou je me serai tromper

Private Sub CommandButton1_Click()
Dim cop As String
Dim chem As String

cop = "FDB " & Range("D7")

chem = "P:\Engineering\Support\Opérations\Inventaire-Suivi_equipement\Fiches de bien\"

ActiveWorkbook.SendMail Recipients:=Array("fabrice.gouhier@arqiva.com"), Subject:="Création/Modification Fiche de Bien " & Range("D7")

Dim Retour
Retour = Application.GetSaveAsFilename(chem & cop)

If Not Retour Then
ActiveWorkbook.SaveCopyAs "P:\Engineering\Support\Opérations\Inventaire-Suivi_equipement\Fiches de bien\"
End If

ActiveWorkbook.Close
End Sub


aurais tu une autre idée ???
0
lermite222 Messages postés 8724 Date d'inscription dimanche 8 avril 2007 Statut Contributeur Dernière intervention 22 janvier 2020 1 190
25 mars 2009 à 15:35
J'a! confondu avec Get... et pas Get
Dim Retour as string
Retour = Application.GetSaveAsFilename(chem & cop)
If Retour <> "" Then
ActiveWorkbook.SaveCopyAs Retour
end if
Je pense que cette fois c'est la bonne
A+
0
UN GRAND MERCI !!!! c'est bon ça fonctionne !!!!! probleme résolut
0