Aide pou rmacro
bonjour
j'ai deux macro
Sub importer()
Dim Myrange As Range
Dim start As Boolean 'On écrit que si on a trouvé Référence
Dim compteur As Integer
compteur = 0
Set Myrange = Sheets("Temp").UsedRange 'On affect la Référence des cellules contenant une valeur.
For ligne = 1 To Myrange.Rows.Count 'On scan toutes les lignes de MyRange.
If start = True Then 'Si on a déjà trouvé Référence
compteur = compteur + 1
Sheets("Tarif").Cells(compteur, 1) = Myrange(ligne + 1, 1)
If compteur = 50 Then Exit For
End If
If Left(Myrange(ligne, 1), 9) = "Référence" Then start = True 'si la cellule contient
Next
End Sub
Sub SupprLignesVides()
' désactiver le rafraîchissement de l'écran pour accélérer le traitement
Application.ScreenUpdating = False
' désactiver les alertes pour empêcher l'affichage
' des messages du genre "Voulez-vous etc."
Application.DisplayAlerts = False
' se placer sur la dernière ligne contenant des données
Range("A65536").End(xlUp).Select
Do
If IsEmpty(ActiveCell) Then
ActiveCell.EntireRow.Delete
End If
ActiveCell.Offset(-1, 0).Select
Loop Until ActiveCell.Row = 1
Application.ScreenUpdating = True
Application.DisplayAlerts = True
End Sub
la première me sert a importer des données d'une autre feuille et l'autre me sert a effacer les cellule vide
mon idée serait de réunir ses deux macro en une seul possibilité ou pas car le bute finale est d'importer des données dans une feuille est dans supprimer les cellule vide
merci a tous de votre aide
Bonjour,
Essaie comme cela (la copie n'est effectuée que si la cellule n'est pas vide).
Sub importer()
Dim Myrange As Range
Dim start As Boolean 'On écrit que si on a trouvé Référence
Dim compteur As Integer
compteur = 0
Set Myrange = Sheets("Temp").UsedRange 'On affect la Référence des cellules contenant une valeur.
For ligne = 1 To Myrange.Rows.Count 'On scan toutes les lignes de MyRange.
If start = True And Not IsEmpty(Myrange(ligne + 1, 1)) Then 'Si on a déjà trouvé Référence et que la cellule n'est pas vide
compteur = compteur + 1
Sheets("Tarif").Cells(compteur, 1) = Myrange(ligne + 1, 1)
If compteur = 50 Then Exit For
End If
If Left(Myrange(ligne, 1), 9) = "Référence" Then start = True 'si la cellule contient
Next
End Sub
bonjour
super c'est ce qui me fallait, dans la mémé formule j'aimerais supprimer tout ce qui est non numérique (texte) est ce possible, si oui il faut mettre une nouvelle condition, mais a quel endroit
merci
Tu peux essayer avec
If start = True And Not IsEmpty(Myrange(ligne + 1, 1)) And IsNumeric(Myrange(ligne + 1, 1)) Then
A+