Macro enregistrer vers si

Bonsoir à tous le monde

J'ai un modèle Devis Factures chaque enregistrement je suis obligé de trier les devis et les factures ,parce que ma macro me les envois en mème dossier j'aimerai bien savoir si c'est possible d'enregistrer la feuille active vers C:\Users\ait haddou\Documents\sud est travaux\DEVIS, si la cellule ( E6)de ma feuille porte le non Devis et enregistrer vers C:\Users\ait haddou\Documents\sud est travaux\Factures si la cellule( E6) de ma feuille porte le nom factutre .

Merci

Cordialement

voila ma macro

Sub enregistrer()

Dim LePath As String, LeNom As String

LePath = ActiveWorkbook.Path & "\"

ActiveSheet.Copy

LeNom = [B12] & Format([E8], "ddmmyyyyhhmm") & ".xls"

ActiveWorkbook.SaveAs LePath & LeNom

ActiveWorkbook.Close

End Sub

Bonjour

Avec le peu de renseignement fournit

Sub enregistrer()
Dim LePath As String, LeNom As String

  If UCase(Range("E6")) = "DEVIS" Then
    LePath = "C:\Users\ait haddou\Documents\sud est travaux\DEVIS\"
  ElseIf UCase(Range("E6")) = "FACTURE" Then
    LePath = "C:\Users\ait haddou\Documents\sud est travaux\Factures\"
  Else
    MsgBox "Vérifier le nom dans E6"
    Exit Sub
  End If

  ActiveSheet.Copy
  LeNom = [B12] & Format([E8], "ddmmyyyyhhmm") & ".xls"
  ActiveWorkbook.SaveAs LePath & LeNom
  ActiveWorkbook.Close
End Sub

Merci beaucoup Banzai64

il manque un truc quand je registre mon devis ou ma facture ,sur mon modèle j'aimerai bien qui change le numéro c'est à dire si ma dèrnière facture porte le numéro FA0000006 sur le modèle il faut avoir FA0000007 ,et si mon dernier devis porte le numéro DE0000005 sur le modele il faut avoir DE0000006 si c'est possible sur la mème macro.

Sub enregistrer()

Dim LePath As String, LeNom As String

If UCase(Range("E6")) = "DEVIS" Then

LePath = "C:\Users\ait haddou\Documents\sud est travaux\DEVIS\"

ElseIf UCase(Range("E6")) = "FACTURE" Then

LePath = "C:\Users\ait haddou\Documents\sud est travaux\Factures\"

Else

MsgBox "Vérifier le nom dans E6"

Exit Sub

End If

ActiveSheet.Copy

LeNom = [B12] & Format([E8], "ddmmyyyyhhmm") & ".xls"

ActiveWorkbook.SaveAs LePath & LeNom

ActiveWorkbook.Close

End Sub

Bonjour

Moi je veux bien, il faut le marquer où ce numéro en cellule IV65536 ?

voila c'est sur (E8)

Bonjour

Je pense que tu as 2 feuilles (Une pour devis et une pour facture)

Ta cellule E8 est avec un format personnalisé

Il suffit d'y rajouter 1 à la fin de macro pour que son numéro soit incrémenté

Remarque : Tu utilises dans la macro la cellule E8 pour la date , hors dans le fichier la date date es dans la cellule E7

A rajouter dans la macro

Sub enregistrer()
  Dim LePath As String, LeNom As String

  If UCase(Range("E6")) = "DEVIS" Then
    LePath = "C:\Users\ait haddou\Documents\sud est travaux\DEVIS\"
  ElseIf UCase(Range("E6")) = "FACTURE" Then
    LePath = "C:\Users\ait haddou\Documents\sud est travaux\Factures\"
  Else
    MsgBox "Vérifier le nom dans E6"
    Exit Sub
  End If

  ActiveSheet.Copy
  LeNom = [B12] & Format([E8], "ddmmyyyyhhmm") & ".xls"
  ActiveWorkbook.SaveAs LePath & LeNom
  ActiveWorkbook.Close
  Range("E8") = Range("E8") + 1
End Sub

Re bonjour Banzai64

ça bug sur cette ligne Range("E8") = Range("E8") + 1

une remarque aussi ,comme j'ai une macro qui change le devis en facture chaque fois que je change devis en facture ou facture en devis ça me remet le conteur E8 à DE0000001 ou FA0000001 Pour facture

Re voila le fichier pour mieux comprendre

Merci

Cordialement

Bonjour

Je t'ai modifié les macros DEVIS3 et FACTURE3

Dans ces macros, chez moi (Excel 2003) la ligne Selection.Interior.ColorIndex = xx plante

A vérifier

Merci Banzai64

Le problème quand je change avec Monbouton la facture en devis ou le devis en facture 9a remet le numéro de devis et de factures en DE0000001 ou FA0000001 elle retiens pas le dernier numéro .si tu reouvre le fichier tu vas le remarquer en appuyant sur le bouton devis

Bonjour

Comment peux tu savoir quel numéro il y avait avant

Exemple : DE0009, ensuite FA0001 ensuite DE??????

Le dernier numéro que ce soit de facture ou de devis n'est pas sauvegardé ?

Quand tu as fais cette macro, tu t'en es pas aperçu ?

Bonjour

c'est bien ça Le dernier numéro que ce soit de facture ou de devis n'est pas sauvegardé

voila la macro du MonBouton pour facture ou devis si tu peux faire quelque chose

Merci

Sub FACTURE3()

Range("E6") = "FACTURE"

Range("E8") = "FA0000001"

Range("A46:A49") = ""

Sheets("les données").Range("D24").Copy Sheets("Devis Factures P1").Range("A47")

ActiveSheet.Shapes("MonBouton").Select

Selection.Characters.Text = "DEVIS"

Selection.Interior.ColorIndex = 30

Range("A54").Select

End Sub

Sub DEVIS3()

Range("E6") = "DEVIS"

Range("E8") = "DE0000001"

Sheets("les données").Range("D26:D29").Copy Sheets("Devis Factures P1").Range("A46")

ActiveSheet.Shapes("MonBouton").Select

Selection.Characters.Text = "FACTURE"

Selection.Interior.ColorIndex = 23

Range("A54").Select

End Sub

Sub MonBouton()

ActiveSheet.Shapes("MonBouton").Select

If Selection.Characters.Text = "FACTURE" Then

Call FACTURE3

Else

Call DEVIS3

End If

End Sub

Bonjour

Peut-être une solution ?

Bonjour

Merci Banzai64

Exactement mais comment tu as fais pour que je puise modifier mon fichier origine

par contre quand je redémarre pour retaper un autre devis ou une autre facture le fichier ça retient pas les numéros peut étre il faut modifier la macro redémarrer? comme c'est un modele je redémarre pour effacer les données sauf le numéro

voila la macro

Sub CloseMe()

Application.OnTime Now + TimeValue("00:00:10"), "OpenMe"

ThisWorkbook.Close False

End Sub

Bonsoir

J'ai modifié les macros FACTURE3 et DEVIS3 et enregistrer(

Elles est sensée faire quoi ta procédure CloseMe

Bonsoir

En faite quand je tape un devis je l'enregistre et je redémarre pour vider les donnés pour que je puise taper un autre

Close Me c'est redémarrer sans enregistrer les modifications, mais j'aimerai bien que m'enregistre juste le numéro de facture ou devis

Merci

Cordialement

Bonsoir

Un peu compliqué comme système

Pourquoi ne pas effacer la zone de saisie ?

Bonsoir

c"est pour se souvenir de dernier Numéro de devis ou de facture

Merci

Bonjour

Banzai64 a écrit :

Pourquoi ne pas effacer la zone de saisie ?

Merci beaucoup Banzai64 pour ton aide et à bientôt

Rechercher des sujets similaires à "macro enregistrer"