fafaira
Messages postés2Date d'inscriptiondimanche 4 septembre 2016StatutMembreDernière intervention 4 septembre 2016
-
Modifié par jordane45 le 4/09/2016 à 20:47
cs_MPi
Messages postés3877Date d'inscriptionmardi 19 mars 2002StatutMembreDernière intervention17 août 2018
-
6 sept. 2016 à 16:32
Bonjour,
J'ai besoin d'aide.
Je veux copier des cellules d'une feuille avec un nom NETTOYAGE a une cellule avec une variable
sheets(cells(3,i).value)
Mias ca beug après le end if sur
Worksheets(Cells(3, i).Value).Activate
Il me dit erreur 9, l'indice n'appartient pas à la selection.
Je n'arrive pas à trouver l'ereur.
Pouvez vous m'aider ?
Dim entreprise As String, nom As String, detail As String, l As Long, montant As Integer, j As Integer, k As Integer
Dim NETTOYAGE As Worksheet
i = 6
l = 4
Sheets("NETTOYAGE").Activate
Do Until Cells(3, i) = "TOTAL FACTURE"
Do Until Cells(l, i) = ""
If Cells(l, i) = 0 Then
l = l + 1
Else
Worksheets(Cells(3, i).Value).Activate
k = 7
Do While Cells(k, 2) = notempty
k = k + 1
Loop
Worksheets("NETTOYAGE").Activate
Range(Cells(l, 1), Cells(l, 2)).Select
Selection.Copy
Worksheets(Cells(3, i).Value).Select
Range(Cells(k, 1), Cells(k, 2)).Select
ActiveSheet.Paste
Cells(l, i).Select
Selection.Copy
Sheets(Cells(3, i).Value).Select
Cells(k, 3).Select
ActiveSheet.Paste
Worksheets("NETTOYAGE").Activate
l = l + 1
End If
Loop
i = i + 1
Loop
End Sub
EDIT : Ajout des balises de code (la coloration syntaxique). Explications disponibles ici :ICI
jordane45
Messages postés38241Date d'inscriptionmercredi 22 octobre 2003StatutModérateurDernière intervention17 septembre 2024345 4 sept. 2016 à 20:51
Bonjour,
<block>
Mias ca beug après le end if sur
Worksheets(Cells(3, i).Value).Activate
Il me dit erreur 9, l'indice n'appartient pas à la selection.
</code>
Question bête ( ou pas....)
- Que vaut i lorsque ça plante ?
- Quelle est la valeur de la cellule à ce moment là ??
- Est-ce qu'une feuille portant ce nom existe bien (avec EXACTEMENT la même orthographe... espaces compris!!!!) ???
De plus... tu fais des copy/Past .... mais... que veux tu récupérer exactement ? Si ce n'est QUE LA VALEUR de la cellule (et pas sa mise en forme....) il vaut mieux éviter d'utiliser des SELECT / COPY / PASTE ... et seulement faire des RangeDestination.value = RangeSource.value .....
fafaira
Messages postés2Date d'inscriptiondimanche 4 septembre 2016StatutMembreDernière intervention 4 septembre 2016 4 sept. 2016 à 22:25
Bonjour,
Merci de votre réponse.
I=6 normalement lors de la première boucle. Mais je ne sais pas relevé cette valeur au moment quand ça beug.
Eh oui je veux récupérer que la valeur.
La valeur que je récupère cells (3,i) est RK
Et j ai une feuille qui se nomme également RK.
Je veux récupérer les valeurs de cette entreprise et mettre que ses valeur dans sa feuille perso.
Dans la feuille nettoyage, j ai l ensemble des entreprises.
Comment fonctionne votre fonction ?
Dois je à chaque fois activer la feuille ?
Pourquoi il ne reconnaît pas l indice alors que je l ai déclaré ?
jordane45
Messages postés38241Date d'inscriptionmercredi 22 octobre 2003StatutModérateurDernière intervention17 septembre 2024345 4 sept. 2016 à 22:29
je ne sais pas relevé cette valeur au moment quand ça beug.
Tu n'as qu'à exécuter ton script en mode PAS à PAS et regarder (en survolant les variables avec ta souris) quelles sont leur valeur...
Tu peux aussi utiliser la console de debogage en y affichant les variables
par exemple avec un