sauvegarder des données provenant d'un menu déroulant

G

Guest

Guest
bonjour à tous,
j'ai un classeur nommé source et classeur nommé destination
le classeur source sert de formulaire, les cases sont remplies par un formateur
une fois toutes les cases renseignées je souhaite transférer ces données dans le classeur destination et effacer les données du classeur source pour un nouvel emploi sans que les données du classeur destination ne soient effacées.les données suivantes doivent s'incrémenter dans l'ordre d'une date par exemple.
pour effacer les données pas de souci avec clearcontents mais pour le transfert je sèche.
pour simplifier je n'ai mis qu'un classeur
merci d'avance
 

Pièces jointes

  • Classeur1.xls
    15 KB · Affichages: 59
  • Classeur1.xls
    15 KB · Affichages: 70
  • Classeur1.xls
    15 KB · Affichages: 63
G

Guest

Guest
Re : sauvegarder des données provenant d'un menu déroulant

Bonjour Efgé,comme indiqué le projet est terminé et la solution était bonne,c'est un projet presque identique car il n'y a que la destination qui change, j'aurai peut-être du ouvrir une nouvelle discussion si c'est à cela que tu penses ?
 
G

Guest

Guest
Re : sauvegarder des données provenant d'un menu déroulant

Bonjour Efgé,le projet initial est terminé et fonctionne très bien,je dois maintenant adapté ce projet avec les mêmes fonctionnalité
pour un autre projet.
merci
 

Efgé

XLDnaute Barbatruc
Re : sauvegarder des données provenant d'un menu déroulant

Re
Une proposition. Si la feuille destination n'existe pas, elle sera crée.
VB:
Public Sub CommandButton1_Click()
Dim F As Worksheet, NbrChmp&, Nom$, TabloReport()
Nom = "destination" ' Nom de la feuille de destination
NbrChmp = 7 '6 Zones à copier dans l'exemple + la date
ReDim TabloReport(1 To NbrChmp)
On Error Resume Next
Set F = Sheets(Nom)
On Error GoTo 0
If F Is Nothing Then Sheets.Add(After:=Sheets(Sheets.Count)).Name = Nom
With Sheets("source")
    .Activate
    TabloReport(1) = .Range("A3")
    TabloReport(2) = .Range("B3")
    TabloReport(3) = .Range("C3")
    TabloReport(4) = .Range("D3")
    TabloReport(5) = .Range("F3")
    TabloReport(6) = .Range("B6")
    TabloReport(7) = Now
    Sheets(Nom).Cells(Rows.Count, 1).End(xlUp).Offset(1, 0). _
    Resize(1, NbrChmp) = TabloReport
End With
MsgBox "Votre base de données à été sauvegardée"
End Sub
Cordialement

Edit Pas besoin de ScreenUpdating
 
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
312 229
Messages
2 086 423
Membres
103 206
dernier inscrit
diambote