P
Phil76
Guest
Bonjour à tous.
J'ai une feuille dans laquelle je vais stocker des informations en fonction d'un critére précis.
Si cette feuille contient des informations, le programme traite sans problème.
Si cette feuille ne contient aucune information, comment puis-je faire pour terminer la procedure en cours et faire appel à une autre.
'Synthése des données
Application.ScreenUpdating = False
Sheets("Extraction").Range("A1:F65000").ClearContents
With Sheets("Données")
derligne = .Range("B" & Rows.Count).End(xlUp).Row
For Each c In .Range("A1:A" & derligne - 1).SpecialCells(xlCellTypeBlanks)
If c.Offset(0, 2) >= 30 Then
c.Offset(-1, 1).Resize(1, 6).Copy
Sheets("Extraction").Range("B65000").End(xlUp).Offset(1, -1).PasteSpecial Paste:=xlPasteValues
Else
Exit Sub
End If
Next c
End With
With Sheets("Données")
derligne = .Range("B" & Rows.Count).End(xlUp).Row
For Each c In .Range("A1:A" & derligne - 1).SpecialCells(xlCellTypeBlanks)
If c.Offset(0, 2) >= 30 Then
c.Offset(0, 2).Resize(1, 1).Copy
Sheets("Extraction").Range("G65000").End(xlUp).Offset(1, 0).PasteSpecial Paste:=xlPasteValues
End If
Next c
End With
'Préparation pour la copie des données vers la feuille du mois en cours
Application.DisplayAlerts = False
Sheets("Extraction").Select
Columns("B:C").Select
Application.CutCopyMode = False
Selection.Delete Shift:=xlToLeft
Selection.SpecialCells(xlCellTypeLastCell).Select
Selection.Offset(0, -6).Formula = "=SUM(E:E)"
Range("A1").Select
Selection.CurrentRegion.Select
Selection.Copy
La ligne qui pose problème est celle-ci :
Selection.Offset(0, -6).Formula = "=SUM(E:E)"
J'ai une feuille dans laquelle je vais stocker des informations en fonction d'un critére précis.
Si cette feuille contient des informations, le programme traite sans problème.
Si cette feuille ne contient aucune information, comment puis-je faire pour terminer la procedure en cours et faire appel à une autre.
'Synthése des données
Application.ScreenUpdating = False
Sheets("Extraction").Range("A1:F65000").ClearContents
With Sheets("Données")
derligne = .Range("B" & Rows.Count).End(xlUp).Row
For Each c In .Range("A1:A" & derligne - 1).SpecialCells(xlCellTypeBlanks)
If c.Offset(0, 2) >= 30 Then
c.Offset(-1, 1).Resize(1, 6).Copy
Sheets("Extraction").Range("B65000").End(xlUp).Offset(1, -1).PasteSpecial Paste:=xlPasteValues
Else
Exit Sub
End If
Next c
End With
With Sheets("Données")
derligne = .Range("B" & Rows.Count).End(xlUp).Row
For Each c In .Range("A1:A" & derligne - 1).SpecialCells(xlCellTypeBlanks)
If c.Offset(0, 2) >= 30 Then
c.Offset(0, 2).Resize(1, 1).Copy
Sheets("Extraction").Range("G65000").End(xlUp).Offset(1, 0).PasteSpecial Paste:=xlPasteValues
End If
Next c
End With
'Préparation pour la copie des données vers la feuille du mois en cours
Application.DisplayAlerts = False
Sheets("Extraction").Select
Columns("B:C").Select
Application.CutCopyMode = False
Selection.Delete Shift:=xlToLeft
Selection.SpecialCells(xlCellTypeLastCell).Select
Selection.Offset(0, -6).Formula = "=SUM(E:E)"
Range("A1").Select
Selection.CurrentRegion.Select
Selection.Copy
La ligne qui pose problème est celle-ci :
Selection.Offset(0, -6).Formula = "=SUM(E:E)"