Enregistrer feuille Excel sans lien
Bonjour,
J'ai un souci j'ai crée une petite base de données, qui fonctionne trés bien, le probléme est que j'enregistre une feuille (facture) et que cette feuille me sert comme une archive, mais elle reste lié a ma base de donnée ce qui me pose le probleme du faite que ma base de donnée est remise a zero chaque jour, donc ma feuille (facture) ce remet également a zero, donc me sert a rien.
je voudrais savoir si il est possible d'enregistrée cette feuille sans qu'elle puisse avoir une relation avec ma basse de donnée afin qu'elle garde ses valeurs et donnée au moment de son enregistrement.
j'utilise une macro pour faire l'enregistrement
Sub Sauvegarde_facture_client()
'
Dim extension As String
Dim chemin As String, nomfichier As String
Dim style As Integer
Application.ScreenUpdating = False
ThisWorkbook.ActiveSheet.Copy
extension = ".xls"
chemin = "C:\Gestion\Factures\"
nomfichier = ActiveSheet.Range("B13") & Format(Date, "_dd-mm-yyyy") & xls
With ActiveWorkbook
.ActiveSheet.SaveAs Filename:=chemin & nomfichier
.Close
End With
End Sub
J'espére que vous pourrez m'aider
je vous remercie d'avance
marc
Bonjour,
Cela me rappelle quelque chose ce code...
Sans voir ton fichier, voici le code à essyer
Sub Sauvegarde_facture_client()
Dim extension As String
Dim chemin As String, nomfichier As String
Application.ScreenUpdating = False
ThisWorkbook.ActiveSheet.Copy
extension = ".xls"
chemin = "C:\Gestion\Factures\"
nomfichier = ActiveSheet.Range("B13") & Format(Date, "_dd-mm-yyyy") & extension
With ActiveWorkbook.ActiveSheet
.Cells.Copy
.Cells.PasteSpecial Paste:=xlValues
.SaveAs Filename:=chemin & nomfichier
.Close
End With
End Sub
Amicalement
Bonjour
Décidément : Une autre méthode, mais celle de Dan me semble meilleure
Voilà ce que j'ai trouvé
Option Explicit
Sub Sauvegarde_facture_client()
'
Dim Extension As String
Dim Chemin As String, NomFichier As String
'Dim style As Integer
Application.ScreenUpdating = False
Application.DisplayAlerts = False
ThisWorkbook.ActiveSheet.Copy
Extension = ".xls"
Chemin = ThisWorkbook.Path & "\" '"C:\Gestion\Factures\"
'NomFichier = ActiveSheet.Range("B13") & Format(Date, "_dd-mm-yyyy") & xls
NomFichier = ActiveSheet.Range("B13") & Format(Date, "_dd-mm-yyyy") & Extension
With ActiveWorkbook
.BreakLink Name:= _
"Chemin_Complet_Du_Lien" _
, Type:=xlExcelLinks
.ActiveSheet.SaveAs Filename:=Chemin & NomFichier
'.Close
End With
End Sub
Re Bonjour,
Merci a vous, oui Dan tu à surement déjà vue cette macro
Car malgré mon âge suis novice et je parcours ce Forum afin
d’apprendre et j’ai crée cette basse de donnée qui à pour fonction
de géré un marché couvert et ses emplacements, aussi j’ai essayer
la correction que vous m’avez si gentiment donnée, mais une erreur
est survenue au lancement de la macro, j’ai bien essayer de remodifié
mais je l’avoue j’ai échoué encore.
Voici l’erreur qui me donne
Propriété ou méthode non gérée par cet objet
Erreur d'exécution 438
puis au débogage il me signale en jaune (.Close )
je joint mon fichier mais il est assez complexe et encore très mal organiser
merci de votre patience, et je voudrais remercié ce forum car il est vraiment
bien suivie et par des gens donc la compétence n’est plus a prouvé mais en plus
de cela des gens super sympa
marc
re,
Oups déso c'est de ma faute là. Corrige le code comme suit
Sub Sauvegarde_facture_client()
Dim extension As String
Dim chemin As String, nomfichier As String
Application.ScreenUpdating = False
ThisWorkbook.ActiveSheet.Copy
extension = ".xls"
chemin = "C:\Gestion\Factures\"
nomfichier = ActiveSheet.Range("B13") & Format(Date, "_dd-mm-yyyy") & extension
With ActiveWorkbook.ActiveSheet.cells
.Copy
.PasteSpecial Paste:=xlValues
End With
with ActiveWorkbook
.close
.SaveAs Filename:=chemin & nomfichier
End with
End Sub
Attention que si tu es sous excel 2007, l'extension peut devenir .XLSX. A corriger dans le code --> extension = ".xlsx"
Amicalement
Un grand merci, cela fonctionne parfaitement
je vous souhaite une bonne continuation a tous et encore merci
je partage cette petite basse de donnée car elle n'est pas à moi mais appartient a ce forum
sans qui je n'aurais pu le faire
aussi a prendre comme exercise, et non comme une base de donnée fiable
cela pourra aider des personne qui sait ?