aurore52230
Messages postés30Date d'inscriptionmercredi 13 février 2008StatutMembreDernière intervention21 février 2017
-
22 nov. 2011 à 15:27
ucfoutu
Messages postés18038Date d'inscriptionlundi 7 décembre 2009StatutModérateurDernière intervention11 avril 2018
-
28 nov. 2011 à 14:08
Bonjour,
Je me permets de vous envoyer ces codes (voir ci-dessous), car un message d'erreur (Erreur d'exécution '1004': La méthode 'Range' de l'objet '_Gobal' a échoué) apparait lors de sa mise en marche (Voir ligne surligné en jaune):
'Nombre de ligne Base Amélie
Do While Sheets(1).Cells(Lignebase, ColonneBase) <> ""
Lignebase = Lignebase + 1
Loop
TotalLigneBase = Lignebase - 1
CompteBase = Lignebase - 1
TotalLigneBase = Lignebase - 1
'Nombre de ligne Capteurs Dispo.
Do While Sheets(2).Cells(LigneCapteurs, ColonneCapteurs) <> ""
LigneCapteurs = LigneCapteurs + 1
Loop
TotalLigneCapteur = LigneCapteurs
CompteCapteur = LigneCapteurs
Sheets(1).Select
Do While TotalLigneBase <> 0
Do While TotalLigneCapteur <> 0
If Sheets(1).Cells(TotalLigneBase, ColonneBase).Value <> Sheets(2).Cells(TotalLigneCapteur, ColonneCapteurs).Value Then
TotalLigneCapteur = TotalLigneCapteur - 1
Else
Do While Total <> 0
If Sheets(1).Cells(TotalLigneBase, MonCopier(Total)).Value = Sheets(2).Cells(TotalLigneCapteur, MonColler(Total)).Value Then
Total = Total - 1
ElseIf Sheets(1).Cells(TotalLigneBase, MonCopier(Total)).Value <> Sheets(2).Cells(TotalLigneCapteur, MonColler(Total)).Value Then
If Sheets(1).Cells(TotalLigneBase, MonCopier(Total)).Value <> "" Then
Sheets(1).Select
Cells(TotalLigneBase, MonCopier(Total)).Select
Selection.Cut
Sheets(2).Select
Cells(TotalLigneCapteur, MonColler(Total)).Select
ActiveSheet.Paste
With Selection.Interior
.ColorIndex = 41
.Pattern = xlSolid
End With
Cells(TotalLigneCapteur, 16) = Date
Total = Total - 1
Else
Total = Total - 1
End If
End If
Loop
Sheets(1).Select
Rows(TotalLigneBase).Select
Selection.Delete Shift:=xlUp
Total = 9
End If
Loop
Do While Total <> 0
Sheets(1).Activate
ValeurCopier = MonCopier(Total)
Range(Cells(TotalLigneBase, ValeurCopier)).Select
Sheets(2).Activate
ValeurColler = MonColler(Total)
Range(Cells(CompteCapteur, ValeurColler)).Select
ActiveSheet.Paste
Total = Total - 1
Loop
Sheets(1).Select
Rows(TotalLigneBase).Select
Selection.Delete Shift:=xlUp
Total = 9
CompteCapteur = CompteCapteur + 1
TotalLigneBase = TotalLigneBase - 1
Loop
End Sub
Ces codes me servent à allé chercher des données dans une base et de copier certaine cellules dans une autre base.
Dans l'attente de vos réponses ou questions complémentaires
Cordialement
Aurore
A voir également:
Variable required can't assign to this expression vba
ucfoutu
Messages postés18038Date d'inscriptionlundi 7 décembre 2009StatutModérateurDernière intervention11 avril 2018211 22 nov. 2011 à 16:32
Bonjour,
-Tu as présenté un code non indenté et non mis entre balises code (et c'est très désagréable). Je te prie de bien vouloir y penser dans tes prochains messages.
-
Range(Cells(TotalLigneBase, ValeurCopier))
ne saurait exprimer une plage (en l'occurence, une seule cellule)
Cells(totallignebase, valeurcopier)
oui
- tu as posé une question. Je m'y suis limité. Mais ton code aurait besoin d'être entièrement revu ici et là .
____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient
ucfoutu
Messages postés18038Date d'inscriptionlundi 7 décembre 2009StatutModérateurDernière intervention11 avril 2018211 28 nov. 2011 à 14:08
Je veux bien savoir où!
Un peu partout, à commencer par cette "floraison" de Select, Copy, Pasre et tutti quanti
____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient