Besoin d'aide pour débug - VB/VBA/VBS - Programmation
Marsh Posté le 28-04-2005 à 10:59:03
Salut,
Merci d'éviter le langage SMS c'est dur à suivre et on ne comprends pas toujours... Fais aussi attention à ton français et pense à utiliser les balises pour le code
Bon, j'arrête les remontrances maintenant! Pourrais-tu nous indiquer à quelle ligne l'erreur est affichée pour nous aider à t'aider?
Merci
Marsh Posté le 28-04-2005 à 11:53:38
lol, je vien de lancer le programme en pas à pas il la ligne ActiveWorkbook.Save présente une erreur "objet requis" L27. j'ai pri un expemple sur un site.
si vous avez des exemples pour ouvrir un autre document excel et l'enregistrer puis le fermer je vous remercie de bien vouloir me les transmettre merci.
Marsh Posté le 30-04-2005 à 18:23:05
La preuve que l'orthographe est importante:
Citation : ActiveWorbook.Save |
Il manque le k de Workbook
J'espère que tu ne seras pas coté sur tes fautes:
Citation : On attribut le contenut de la casse pointé à valeur. |
doit s'écrire: "On attribue le contenu de la case pointée à valeur". De plus, vaut mieux dire "cellule" que "case".
Marsh Posté le 28-04-2005 à 10:31:41
Lu all, je s8 actuellement en stage pour concrétisé mon DUT GEII. Je doit à partir d'un fichier source Xcel le séparer en 3 autres fichiers. L'aurientation vers les différent fichier se ferra en fonction de ce k'il y a d'indiqué dans la collone 11,12,13.
Le probleme est le suivant: Il m'indique une erreur "d'objet requis" je voi pas trop ce que c'est g pas trouver la correspondance dans l'aide
Ps: je n'ai jamais été formé sur VBA, j'ai trouver des cours sur le net je me s8 débrouillé ac et mon tuteur est pas je bloque.
voila mon code:
Sub Test()
Dim valeur As String ' Déclaration d'une chaine de carractère.
Dim Type_carte As String ' Déclaration d'une chaine de carractère.
Dim Adr_Phys As String ' Déclaration d'une chaine de carractère.
Dim Mnémo As String ' Déclaration d'une chaine de carractère.
Dim Adr_VME As String ' Déclaration d'une chaine de carractère.
Dim Type_ES As String ' Déclaration d'une chaine de carractère.
Dim Com As String ' Déclaration d'une chaine de carractère.
Dim i As Integer 'déclaration de la variable i.
Do
For i = 1 To 96 'nous allons éffectuer une boucle qui va se répété 96 fois.
valeur = Cells(i, 11) ' On attribut le contenut de la casse pointé à valeur.
Do While valeur = "S" ' faire si valeur = "S".
Type_carte = Cells(i, 1)
Adr_Phys = Cells(i, 2)
Mnémo = Cells(i, 3)
Adr_VME = Cells(i, 4)
Type_ES = Cells(i, 5)
Com = "# " & Cells(i, 6)
Workbooks.Open Filename:="P:\Documents\FLorent\80-MT centre\KCS.XLS" ' on ouvre le classeur dans le quel on souhaite écrire.
Application.Cells(i, 1) = Type_carte
Application.Cells(i, 2) = Adr_Phys
Application.Cells(i, 3) = Mnémo
Application.Cells(i, 4) = Adr_VME
Application.Cells(i, 5) = Type_ES
Application.Cells(i, 6) = Com
ActiveWorbook.Save
ActiveWindow.Close
Loop
valeur = Cells(i, 12) ' On attribut le contenut de la casse pointé à valeur.
Do While valeur = "R" ' faire si valeur = "R".
Type_carte = Cells(i, 1)
Adr_Phys = Cells(i, 2)
Mnémo = Cells(i, 3)
Adr_VME = Cells(i, 4)
Type_ES = Cells(i, 5)
Com = "# " & Cells(i, 6)
Workbooks.Open Filename:="P:\Documents\FLorent\80-MT centre\KCR.XLS" ' on ouvre le classeur dans le quel on souhaite écrire.
Application.Cells(i, 1) = Type_carte
Application.Cells(i, 2) = Adr_Phys
Application.Cells(i, 3) = Mnémo
Application.Cells(i, 4) = Adr_VME
Application.Cells(i, 5) = Type_ES
Application.Cells(i, 6) = Com
ActiveWorbook.Save
ActiveWindows.Close
Loop
valeur = Cells(i, 13) ' On attribut le contenut de la casse pointé à valeur.
Do While valeur = "P" ' faire si valeur = "P".
Type_carte = Cells(i, 1)
Adr_Phys = Cells(i, 2)
Mnémo = Cells(i, 3)
Adr_VME = Cells(i, 4)
Type_ES = Cells(i, 5)
Com = "# " & Cells(i, 6)
Workbooks.Open Filename:="P:\Documents\FLorent\80-MT centre\KCP.XLS" ' on ouvre le classeur dans le quel on souhaite écrire.
Application.Cells(i, 1) = Type_carte
Application.Cells(i, 2) = Adr_Phys
Application.Cells(i, 3) = Mnémo
Application.Cells(i, 4) = Adr_VME
Application.Cells(i, 5) = Type_ES
Application.Cells(i, 6) = Com
ActiveWorbook.Save
ActiveWindows.Close
Loop
Next
Loop While i <> 96
End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
End Sub
A quoi ressemble mon tableur:
A B C D E F ....... K L M
ICV196 V20900 EF2475MA01RD 0xC42000 E 1= tensionneur entrée R
ICV196 V20901 EF2475MA01NN 0xC42000 E 1= tensionneur entrée R
ICV196 V20902 EF2475MA01SC 0xC42000 E 1= tensionneur entrée R
ICV196 V20903 EF2475MA01AA 0xC42000 E 1= tensionneur entrée R
ICV196 V20904 EF2475MA01VP 0xC42000 E 1= tensionneur entrée R
ICV196 V20905 EF2475MA01CE 0xC42000 E 1= tensionneur entrée R
ICV196 V20906 ED2475MA01RC 0xC42000 E 1= tensionneur entrée R
ICV196 V20907 EF2475MA04R 0xC42000 E Reserve R
Voila a quoi resemble brievement mon tableur. Merci d'avance pour votre aide