Ne pas prendre en compte une ligne lors d'une extraction

Bonjour tout le monde,

Je travail sur un fichier excel dans lequel un code vba (que je n'ai pas codé ) permet de prendre les données de plusieurs fichiers.

Le code marche bien à l'exception que dans l'un des fichiers dont j'extrait les données, une ligne n'est pas à prendre en compte, elle est en plein milieu de ce fichier. J'aurais voulu savoir comment il était possible pour ce fichier spécifique de prendre toutes les données sauf cette ligne.

voilà le code en question :

Merci d'avance pour votre aide.

Sub TelechargementValorisations()

Dim wbPF As Workbook, wMouvement As Worksheet, wbPFValo As Worksheet

Dim Chemin As String, NomPF As String, Fichier As String, DateFin As String, Année As String, Mois As String, codePF As String, _

DatePortf As String, MoisPf As String, AnneePf As String, Adresse As String

Dim DateTelechargement As String, MoisTelechargement As Integer, AnneeTelechargement As Integer

Dim Bool As Boolean, nbPF As Integer, rowIntro As Integer, colonne As Integer, ColDebut As Integer, row As Integer

Application.DisplayAlerts = False

DateFin = wIntro.Cells(6, 4).Value

Année = Mid(DateFin, 7, 4)

Mois = Mid(DateFin, 4, 2)

DatePortf = MonthName(Mois) & "-" & Année

Adresse = wIntro.Cells(3, 2).Value

Chemin = Adresse & "\" & MonthName(Mois) & "-" & Année

nbPF = wIntro.Cells(6, 2).End(xlDown).row

'récupération de la date voulue de début de téléchargement

Do

DateTelechargement = InputBox("à partir de quel date (mois) voulez vous commencer le téléchargement des données (au format mmaaaa)?", "Date téléchargement")

If Len(DateTelechargement) = 6 And IsNumeric(DateTelechargement) And Mid(DateTelechargement, 1, 2) <= 12 Then

MoisTelechargement = Mid(DateTelechargement, 1, 2)

AnneeTelechargement = Mid(DateTelechargement, 3, 4)

Bool = True

Else

MsgBox ("Le format de date saisie n'est pas valide")

Bool = False

End If

Loop While Bool = False

'récupération de la colonne à laquelle commencer le téléchargement (en fonction de la date indiquée)

colonne = 10

Do

If Mid(wValo.Cells(1, colonne).Value, 1, 2) = "VB" And Mid(wValo.Cells(1, colonne).Value, 10, 4) >= AnneeTelechargement And _

Mid(wValo.Cells(1, colonne).Value, 7, 2) >= MoisTelechargement Then

ColDebut = colonne

Bool = False

End If

colonne = colonne + 1

Loop While Bool = True

'suppression des éventuelles valorisations présentes postérieures à la date de téléchargement indiquée

wValo.Range(wValo.Cells(63, ColDebut), wValo.Cells(wValo.Cells(Rows.Count, 1).End(xlUp).row + 1, wValo.Cells(1, Columns.Count).End(xlToLeft).Column + 1)).ClearContents

row = 2

For rowIntro = 6 To nbPF

NomPF = wIntro.Cells(rowIntro, 2).Value

Fichier = "\" & NomPF & " - Portefeuille " & Année & "-" & Mois & ".xls"

Set wbPF = Workbooks.Open(Chemin & Fichier, ReadOnly:=True, UpdateLinks:=0)

Windows(wbPF.Name).Visible = True

Set wbPfMvt = wbPF.Worksheets("Mouvements")

Set wbPFValo = wbPF.Worksheets("Valo historiques")

rowWPF = 11

Do While wbPFValo.Cells(rowWPF, 1).Value <> ""

Bool = False

'regarde si le code est déjà présent dans le fichier

For wValoRow = 2 To wValo.Cells(2, 3).End(xlDown).row

If wValo.Cells(wValoRow, 3).Value = wbPFValo.Cells(rowWPF, 2).Value Then

Bool = True

rowWValoModif = wValoRow

Exit For

End If

Next wValoRow

'insertion du nouveau code (le cas échéant) et de son historique (ainsi que de données: fonds, secteur...)

If Bool = False Then

rowWValoModif = wValo.Cells(2, 3).End(xlDown).row + 1

wValo.Rows(rowWValoModif).Insert

wValo.Cells(rowWValoModif, 1).Value = NomPF

For i = 1 To 4

wValo.Cells(rowWValoModif, i + 1).Value = wbPFValo.Cells(rowWPF, i).Value

Next i

End If

'insertion des nouvelles valorisations à partir de la date de téléchargement

For colonne = ColDebut To wValo.Cells(1, 1).End(xlToRight).Column

For Z = 5 To wbPFValo.Cells(10, 1).End(xlToRight).Column

If wValo.Cells(1, colonne).Value = wbPFValo.Cells(10, Z).Value Then

wValo.Cells(rowWValoModif, colonne).Value = wbPFValo.Cells(rowWPF, Z).Value

Exit For

End If

Next Z

Next colonne

row = row + 1

rowWPF = rowWPF + 1

Loop

wbPF.Close

Set wbPF = Nothing

Next rowIntro

Application.DisplayAlerts = True

MsgBox ("Extraction terminée")

End Sub

Bonjour et bienvenue sur le forum

Ton code est fort beau

Mais comme toute macro

Il aurait tout à gagner

D'être accompagné

D'un joli fichier

Bye !

Rechercher des sujets similaires à "pas prendre compte ligne lors extraction"