Manipulation ligne excel en VB6

Résolu
varach Messages postés 225 Date d'inscription vendredi 14 janvier 2005 Statut Membre Dernière intervention 29 septembre 2016 - 16 nov. 2005 à 21:43
varach Messages postés 225 Date d'inscription vendredi 14 janvier 2005 Statut Membre Dernière intervention 29 septembre 2016 - 18 nov. 2005 à 08:04
bonsoir ,je souhaiterai copier toutes les lignes ecrites d'un fichier excel vers un autre.
J arrive deja a reperer le numero de la derniere ligne ecrite par ce code :

==========================================
Private Sub Command1_Click()


Workbooks.Open FileName:="C:\Documents and Settings\YannV\Bureau\vb\A.xls", Editable:=True
'BOUCLE
R = 1
Do While "" <> Cells(R, 1).Value ' cherche premier ligne vide
R = R + 1
Loop
Text1 = Cells(R - 1, 1).Value 'valeur derniere ligne ecrite
Text2 = R - 1 ' numero de ligne
Workbooks.Close
End Sub
==============================================

je voudrais maintenant copier les ligne A à R-1 afin de les coller dans un autre fichier .

Merci de votre aide ...

4 réponses

valtrase Messages postés 937 Date d'inscription lundi 19 janvier 2004 Statut Membre Dernière intervention 9 mai 2022 3
17 nov. 2005 à 23:46
Re,
UsedRange ne te copie pas toute la feuille seulement les cellules utilisées. C'est ce que tu fait je pense.
dessous tu as deux façon de trouver tes cellules pleines choisi celle qui te convient le mieux.

Dim LastRow As Long
Workbooks.Open Filename:="C:\Documents and Settings\YannV\Bureau\vb\A.xls", Editable:=True
'On part sur le principe que c'est la feuille 1
With Sheets("Feuil1")
' on recherche la dernière ligne remplie
LastRow = .Cells(Cells.Rows.Count, "A").End(xlUp).Row
' Si tu veux rechercher la première ligne vide fait
'LastRow = (Range("A1").SpecialCells(xlCellTypeBlanks).Row) - 1
.Range("A1:A" & LastRow).EntireRow.Copy
End With


'*** On ajoute un classeur
'Workbooks.Add
'*** ou on ouvre un existant
Workbooks.Open Filename:="C:\Documents and Settings\YannV\Bureau\vb\B.xls", Editable:=True
ActiveWorkbook.ActiveSheet.Paste Destination:=Worksheets("Feuil1").Range("A2:A" & LastRow + 1)
Application.CutCopyMode = False

Cordialement, Jean-Paul
______________________________________________________________________

Le Savoir n'a de valeur que s'il est partagé
3
valtrase Messages postés 937 Date d'inscription lundi 19 janvier 2004 Statut Membre Dernière intervention 9 mai 2022 3
17 nov. 2005 à 00:25
Lut,

Workbooks.Open Filename:="C:\Documents and Settings\YannV\Bureau\vb\A.xls", Editable:=True
UsedRange.Copy
'*** On ajoute un classeur
'Workbooks.Add "MyworkBook.xls"
'*** ou on ouvre un existant
Workbooks.Open Filename:="C:\Documents and Settings\YannV\Bureau\vb\B.xls", Editable:=True
ActiveWorkbook.Worksheets("Feuil1").Range("A1").Paste

Cordialement, Jean-Paul
______________________________________________________________________

Le Savoir n'a de valeur que s'il est partagé
0
varach Messages postés 225 Date d'inscription vendredi 14 janvier 2005 Statut Membre Dernière intervention 29 septembre 2016
17 nov. 2005 à 09:10
merci pour ton aide , mais je ne veux pas copier la feuille complete mais uniquement les lignes A à R-1 afin de les copier a partir de la ligne B d un autre fichier ( la ligne A de ce nouveau fichier contient des formules entre autre )

merci d avance
0
varach Messages postés 225 Date d'inscription vendredi 14 janvier 2005 Statut Membre Dernière intervention 29 septembre 2016
18 nov. 2005 à 08:04
Merci , c est exactement ca
0
Rejoignez-nous