VBS :Recuperer le numero de la derniere ligne
_Tido_
-
michel_m Messages postés 18903 Date d'inscription Statut Contributeur Dernière intervention -
michel_m Messages postés 18903 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
j'essaye d'aller sur la derniere ligne d'un fichier excel que je modifie de manière iterative :
ouverture
ecriture sur la derniere ligne
fermeture
L'ouverture et la fermeture marche.
L'ecriture sur une cellule donnée aussi. je n'arrive pas à aller sur la dernière ligne.
J'utilise la méthode .SpecialCells(xlCellTypeLastCell) mais cela ne marche pas.
"Impossible de lire la propriétés special cells de la classe Range"
L'application sera lancer a la ligne de commande dos C:\Program~\system32\Cscript.exe test.vbs
Voici le code source test.vbs:
x1 = 100
Dim AppExcel
Dim Fichier
Dim Feuille_XLS
Dim Derniere_Ligne
Fichier ="C:\ddb_stockage.xls"
Feuille_XLS="Feuil1"
If FichierExiste(Fichier) = False Then
MsgBox "Le fichier " & Fichier & " est introuvable !"
WScript.Quit
End If
Set AppExcel = WScript.CreateObject("Excel.Application")
AppExcel.Visible = True
'On Error Resume Next
'ouvre le classeur
AppExcel.Workbooks.Open (Fichier)
AppExcel.Sheets(Feuille_XLS).Activate
'AppExcel.ActiveSheet.Range("A2").Activate 'saute la 1ère ligne
Derniere_Ligne = AppExcel.ActiveSheet.Range("A1").SpecialCells(xlCellTypeLastCell).Activate
'AppExcel.Cell(Derniere_ligne+1,1)=x1S
'AppExcel.ActiveCell.FormulaR1C1 = x1
Set AppExcel = Nothing
'quitte VBS
WScript.Quit
'Test d'existence d'un fichier
Function FichierExiste(Fichier)
Dim FSO
Set FSO = CreateObject("Scripting.FileSystemObject")
FichierExiste = FSO.FileExists(Fichier)
Set FSO = Nothing
End Function
j'essaye d'aller sur la derniere ligne d'un fichier excel que je modifie de manière iterative :
ouverture
ecriture sur la derniere ligne
fermeture
L'ouverture et la fermeture marche.
L'ecriture sur une cellule donnée aussi. je n'arrive pas à aller sur la dernière ligne.
J'utilise la méthode .SpecialCells(xlCellTypeLastCell) mais cela ne marche pas.
"Impossible de lire la propriétés special cells de la classe Range"
L'application sera lancer a la ligne de commande dos C:\Program~\system32\Cscript.exe test.vbs
Voici le code source test.vbs:
x1 = 100
Dim AppExcel
Dim Fichier
Dim Feuille_XLS
Dim Derniere_Ligne
Fichier ="C:\ddb_stockage.xls"
Feuille_XLS="Feuil1"
If FichierExiste(Fichier) = False Then
MsgBox "Le fichier " & Fichier & " est introuvable !"
WScript.Quit
End If
Set AppExcel = WScript.CreateObject("Excel.Application")
AppExcel.Visible = True
'On Error Resume Next
'ouvre le classeur
AppExcel.Workbooks.Open (Fichier)
AppExcel.Sheets(Feuille_XLS).Activate
'AppExcel.ActiveSheet.Range("A2").Activate 'saute la 1ère ligne
Derniere_Ligne = AppExcel.ActiveSheet.Range("A1").SpecialCells(xlCellTypeLastCell).Activate
'AppExcel.Cell(Derniere_ligne+1,1)=x1S
'AppExcel.ActiveCell.FormulaR1C1 = x1
Set AppExcel = Nothing
'quitte VBS
WScript.Quit
'Test d'existence d'un fichier
Function FichierExiste(Fichier)
Dim FSO
Set FSO = CreateObject("Scripting.FileSystemObject")
FichierExiste = FSO.FileExists(Fichier)
Set FSO = Nothing
End Function
A voir également:
- VBS :Recuperer le numero de la derniere ligne
- Vbs windows - Accueil - Optimisation
- Vbs - Télécharger - Édition & Programmation
- Vbs edit - Télécharger - Édition & Programmation
- Fichier vbs ✓ - Forum Autoit / batch
- Vbs pause ✓ - Forum VB / VBA
1 réponse
Bonjour,
essaies
AppExcel.Workbooks.Open (Fichier)
der_lig=Sheets(Feuille_XLS).range("A65536").end(xlup).row
cells(der_lig+1,1)=x1
tu n'as pas besoin des activate...
par contre:
1/ tu as oublié (?) de sauvegarder le classeur
2/ as tu besoin de rendre le classeur visible ? (appexcel.visible=true...)
3/ un ptit message à la fin pour avertir que c'est OK genre msgbox " affectation à Excel réussie"
essaies
AppExcel.Workbooks.Open (Fichier)
der_lig=Sheets(Feuille_XLS).range("A65536").end(xlup).row
cells(der_lig+1,1)=x1
tu n'as pas besoin des activate...
par contre:
1/ tu as oublié (?) de sauvegarder le classeur
2/ as tu besoin de rendre le classeur visible ? (appexcel.visible=true...)
3/ un ptit message à la fin pour avertir que c'est OK genre msgbox " affectation à Excel réussie"