Valeure d'une cellule avec VBA

kllmoon

XLDnaute Occasionnel
Bonjour, je croyais avoir résolu mon problème mais j'ai une nouvelle embuche!

Avec cette formule :

Private Sub CommandButton1_Click()
Dim x As Long
Dim Periode As Long
x = [COUNTA(B3:B63)+2 ]
Periode = ActiveSheet.Range("D1").Value
Range("A1:F" & x).Select
ActiveWindow.Selection.Copy
Dim AppWord
Set AppWord = CreateObject("Word.Application")
UserName = InputBox("Quel est votre nom d'utilisateur sur cet ordinateur?")
Shell "winword.exe ""C:\Documents and Settings\" & UserName & "\Bureau\Stats\stats.doc"""""
AppWord.Visible = True
AppWord.Selection.Paste
AppWord.ActiveDocument.SaveAs "C:\Documents and Settings\" & UserName & "\Bureau\Stats\" & Periode & ".doc"
AppWord.Quit
MsgBox "Votre document a été sauvegardé dans votre dossier stat sur votre bureau avec le nom " & Periode & ".doc", vbInformation, "Attention"

End Sub

Tout fonctionne très bien, la macro fait ce que je veux qu'elle fasse à une exeption près. La valeure Periode me donne "0" alors que dans la case D3, je veux la valeur de ce qui y est écrit et non sa valeur numérique (i.e. Période 11). Comment faire pour aller chercher cette valeur texte?

Cette formule sauvegarde sous "0.doc" (si la case est vide) alors que je veux qu'elle sauvegarde sous "période_11.doc"

Ce que je peux voir ocmme solution c'est de donner la valeur numérique à période (11 pour cet exemple) et d'ajouter la variable qui ne change pas (i.e. période) mais il me semble qu'il doit y avoir un moyen de faire sortir la valeur de la cellule même si ce n'est pas un chiffre non?
 
Dernière édition:

Statistiques des forums

Discussions
312 502
Messages
2 089 022
Membres
104 006
dernier inscrit
CABROL