rangement de donnés dans un autre classeur

GHISLAIN

XLDnaute Impliqué
bonjour a tous ,

avec l'aide de tototiti2008 et de hippolite que je remercie infiniment au passage ils m'ont apporté leur competence et savoir faire pour l'elaboration d'un projet .
toutefois je souhaite ajouter une fonction a ce projet , en esperant me faire comprendre car j ai eu du mal sur un autre post , n'etant pas pro du vba

le code que j ai actullement et qui fontionne parfaitement est le suivant :

Dim Lig As Long
Dim Col As Long
Dim NbrLig As Long
Dim NumLig As Long
ActiveSheets = Sheets("Base").range("h5").Value
Col = 1
With Sheets("base")
For Lig = 15 To 27
If .Cells(Lig, Col).Value <> "XXXXX" Then 'recherche sur la plage de la ligne 15 a27 les ligne ne comportant pas de "XXXXX"

.range("A" & Lig & ":C" & Lig & ",H" & Lig & ":I" & Lig & ",L" & Lig & ":N" & Lig).Copy
(copie des colonnes dont la premiere cellule ne contien pas de "xxxxx")

Cells(Rows.Count, 3).End(xlUp).Offset(1, 0).Select
( range a la suite les lignes copiée)

Cells(Rows.Count, 1).End(xlUp).Offset(1, 0).Value = Sheets("Base").range("h5").Value
(rajoute en debut de chaque ligne une information copié sur la feuille "base" soit une date)

Cells(Rows.Count, 2).End(xlUp).Offset(1, 0).Value = Sheets("Base").range("h11").Value
(rajoute en debut de chaque ligne copié en seconde cellule une information copié sur la feuille "base" )


Worksheets(Sheets("base").range("H9").Value).Activate
(selectionne l'onglet par rapport a la valleur de la cellule "h9"" de la feuille base)

(active la feuille et colle les données)
ActiveSheet.Paste

End If

Next Lig



je souhaite avoir la meme procedure mais que cette macro effectue l'operation du classeur a un autre classeur.

le classeur actif ou est la macro et ou doit etre copié les donnees ne nome ("range donneeBon3.xls")




le classeur ou doit s effectuer le collage de ces donnees se nome ("prod.xls")

ce classeur se trouve dans le repertoire c:\doc


ce que j arrive a faire a partir du classeur ("range donneeBon3.xls"), c est d ouvrir le classeur ("prod.xls") se trouvant sur c:\doc.

une fois ce classeur ouvert je cree une nouvelle feuille si elle n existe pas , en copiant le modele se trouvant sur
("prod.xls").


ce que je n arrive pas a faire c est modifier le code si dessus pour enregistrer les donnees sur la nouvelle feuille cree.




ci dessous le code que j utilise pour ouvrir mon classeur et creer la feuille .
Dim VNom As String
VNom = Sheets("base").range("H9")
Workbooks.Open Filename:="C:\doc\prod.xls"
On Error Resume Next
If FeuilleExiste(VNom) Then
MsgBox "feuille" & VNom & " existe déjà"
Exit Sub
Else
Sheets("MODELE").Copy After:=Sheets(Sheets.Count)
ActiveSheet.Name = VNom
End If


merci a tous de votre aide et proposition

amicalement ghislain
 

GHISLAIN

XLDnaute Impliqué
Re : rangement de donnés dans un autre classeur

re tous ,

je rajoute les deux classeurs
 

Pièces jointes

  • range donneeBon3.zip
    24.5 KB · Affichages: 18
  • range donneeBon3.zip
    24.5 KB · Affichages: 17
  • range donneeBon3.zip
    24.5 KB · Affichages: 22
  • Copie de prod.zip
    17.4 KB · Affichages: 20
  • Copie de prod.zip
    17.4 KB · Affichages: 20
  • Copie de prod.zip
    17.4 KB · Affichages: 15

Discussions similaires

Statistiques des forums

Discussions
312 294
Messages
2 086 924
Membres
103 404
dernier inscrit
sultan87