cbr600fs
Messages postés14Date d'inscriptionjeudi 29 septembre 2005StatutMembreDernière intervention20 février 2006
-
19 oct. 2005 à 15:32
cs_Willi
Messages postés2375Date d'inscriptionjeudi 12 juillet 2001StatutModérateurDernière intervention15 décembre 2018
-
20 oct. 2005 à 15:08
Bonjour,
Je suis débutante et je cherche à tester via vba excel si un fichier est en lecture seule ou non. J'ai donc cherché sur le net et j'ai trouvé le code suivant :
Sub vérifier_si_fichier_lecture_seule()
Dim Fs As Object, St As Integer
Set Fs = CreateObject("Scripting.FileSystemObject")
Set F = Fs.GetFile("C:\toto.xls")
St = F.Attributes
If St 1 Or St 33 Then
LectureSeule = True
MsgBox "lecture seule"
Else
LectureSeule = False
MsgBox "pas de lecture seule"
cs_Willi
Messages postés2375Date d'inscriptionjeudi 12 juillet 2001StatutModérateurDernière intervention15 décembre 201823 19 oct. 2005 à 15:45
Essais cette petite fonction
Sub Attribut_Fichier(Fichier As String)
Dim sFileAttrib As Long
sFileAttrib = GetAttr(Fichier)
If (sFileAttrib And vbReadOnly) = vbReadOnly Then
MsgBox "le fichier " & Fichier & " est en lecture seule"
Else
MsgBox "le fichier " & Fichier & " n'est pas en lecture seule"
End If
cs_Willi
Messages postés2375Date d'inscriptionjeudi 12 juillet 2001StatutModérateurDernière intervention15 décembre 201823 19 oct. 2005 à 18:07
Je crois que c'est le ; qui délimite les adresses mail quand il y en a plusieurs
Alors test ceci est dis moi...
MonMessage.To = CStr(Range("A1")) & ";" & CStr(Range("A2"))
cbr600fs
Messages postés14Date d'inscriptionjeudi 29 septembre 2005StatutMembreDernière intervention20 février 20062 19 oct. 2005 à 15:51
Bonjour,
Chez moi il ne fonctionne pas. Du coup j'ai trouvé un autre code qui lui à l'air de fonctionner :
If ActiveWorkbook.ReadOnly Then
MsgBox "Le fichier est en cours d'utilisation"
Else
MsgBox "Fichier en écriture"
End If
Dis moi je vais abuser un peu mais j'ai un soucis avec un autre type de code, plus axé sur OUTLOOK. Voilà je voudrai envoyer un message avec pièce jointe à plusieurs utilisateurs dont je récupére les adresses email de listes déroulantes dans une feuille de calcul. Je n'arrive pas à lui indiquer de l'envoyer à plusieurs personnes en même temps (dans un même message Outlook)
Set MonOutlook = CreateObject("Outlook.Application")
Set MonMessage = MonOutlook.createitem(0)
cs_Willi
Messages postés2375Date d'inscriptionjeudi 12 juillet 2001StatutModérateurDernière intervention15 décembre 201823 19 oct. 2005 à 17:38
Toute tes propriétés To From Bbc Subject Body attendent une chaine de caractère !
Pour cela convertit la valeur de tes ranges avec Cstr comme ci-dessus dans mon exemple. D'ailleurs je me suis trompés j'ai appliqué CStr à CC mais bon dans le code que tu donnes il faut que tu le mettes à To à From à Bbc
cbr600fs
Messages postés14Date d'inscriptionjeudi 29 septembre 2005StatutMembreDernière intervention20 février 20062 19 oct. 2005 à 17:46
malheureusement cela ne fonctionne pas il me met toujours l'erreur 13.
apparemment c'est la virgule entre les 2 Cstr qu'il n'apprécie pas. J'ai essayé de remplacer la virgule par "and" mais le résultat est le même.
Je vais regarder à nouveau chez moi ce soir.
Si tu as d'autres idées, je veux bien et je te remercie d'essayer de m'aider.
cs_Willi
Messages postés2375Date d'inscriptionjeudi 12 juillet 2001StatutModérateurDernière intervention15 décembre 201823 19 oct. 2005 à 18:07
Je crois que c'est le ; qui délimite les adresses mail quand il y en a plusieurs
Alors test ceci est dis moi...
MonMessage.To = CStr(Range("A1")) & ";" & CStr(Range("A2"))