Aide XLS 2010 VBA

patoche1020

XLDnaute Nouveau
Bonjour à tous

Je suis face à un nœud pour lequel je le sollicite de l'aider

J'ai à ce jour en bidouillant plusieurs macro trouvée ici réussi à faire une macro pour copier coller des données d'un tableau excel vers un formulaire existant.

J'ai un fichier (test.xls) comprenant deux onglets , l'un étant mon tableau (overview) que je complète l'autre étant un formulaire (formulaire) avec des champs à remplir
Une fois mon tableau complété et arrivé à la cellule 15 de la ligne A la macro se mets en route et crée un nouvelle feuille nommée tempo (reprenant mon formulaire vierge) et la complète en reprenant l les données que j'ai inséré sur la ligne de mon tableau de mon tableau ensuite copie colle de la feuille tempo vers un nouveau fichier

Ce que j'aimerais faire est soit

- une fois copiée dans le nouveau fichier supprimer la feuille tempo de mon fichier d'origine
-zapper l'étape création d'un onglet et directement retranscrire les données du tableau dans mon file formulaires


je joins le code à vous de voir ce qui est possible de modifier et me dire ce que j'aurais mal fait

Sub creerformulaire()
'
' Macro1 Macro

' Macro enregistrée le 09/06/2012 by FRP

Vdossier = ActiveCell.Offset(0, -13).Range("A1").Value
VdateClaim = ActiveCell.Offset(0, -12).Range("A1").Value
Vid = ActiveCell.Offset(0, -11).Range("A1").Value
Vclient = ActiveCell.Offset(0, -10).Range("A1").Value
VadresseClient = ActiveCell.Offset(0, -9).Range("A1").Value
Vville = ActiveCell.Offset(0, -8).Range("A1").Value
Vnumclient = ActiveCell.Offset(0, -7).Range("A1").Value
Vx = ActiveCell.Offset(0, -6).Range("A1").Value
Vjci = ActiveCell.Offset(0, -5).Range("A1").Value
Vbl = ActiveCell.Offset(0, -4).Range("A1").Value
Vinfoextra = ActiveCell.Offset(0, -1).Range("A1").Value
Vreason = ActiveCell.Offset(0, -3).Range("A1").Value
Vaction = ActiveCell.Offset(0, -2).Range("A1").Value

'Copie des données dans la fiche tempo crée
Range("adresse").Value = VadresseClient
Range("client").Value = Vclient
Range("user").Value = Vid
Range("date").Value = VdateClaim
Range("numero").Value = Vdossier
Range("livré").Value = Vnumclient
Range("ville").Value = Vville
Range("x").Value = Vx
Range("commande").Value = Vjci
Range("bl").Value = Vbl
Range("info").Value = Vinfoextra
Range("reason").Value = Vreason
Range("action").Value = Vaction

'copier/coller dans un nouveau document
Sheets("formulaire").Select
Range("A1:S83").Select
Selection.Copy
Workbooks.Add
Range("A1").Select
ActiveSheet.Activate
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
Selection.PasteSpecial Paste:=xlPasteColumnWidths, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
MsgBox "N'oubliez pas de complèter la partie détails de cette fiche ensuite vous pourrez sauvegarder votre fiche"
Application.DisplayAlerts = False


End Sub





Pour ceux que ca intéresse je commence avec
la "formule si la cellule 15 start ;) (trouvé sur le net aussi ) si votre cellule est autre que 15 il suffit de modifier ;-)

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Column = 15 Then
yesorno
End If

End Sub

et mon yesorno
Sub yesorno()

' Macro1 Macro

' Macro enregistrée le 09/06/2012 by FRP


Dim Answer As String
Dim MyNote As String

'Creation du Fichier Complaint
MyNote = "Voulez vous Continuer?"

'Display MessageBox
Answer = MsgBox(MyNote, vbQuestion + vbYesNo, "Création de la fiche Complaint")

If Answer = vbNo Then

'Code for No button Press
MsgBox "You pressed NO!"
Else
creerformulaire
End If

End Sub
 
Dernière édition:

Discussions similaires

Réponses
3
Affichages
568

Membres actuellement en ligne

Statistiques des forums

Discussions
312 084
Messages
2 085 194
Membres
102 814
dernier inscrit
JLGalley