L
Le rital
Guest
Bonjour le forum,
J'ai trouver une macro qui ajoute une ligne avec les formules
Comment faire pour ne pas copier les formules de la colonne "B"
Merci d'avance
Cordialement
Le rital
'Attribute VB_Name = "InsererLignesAvecFormules"
Sub InsertRowsAndFillFormulas(Optional vRows As Long)
ActiveCell.EntireRow.Select 'Ainsi tu ne dois pas pré-sélectionner la rangée entière
If vRows <> 1 Then
vRows = Application.InputBox(prompt:= _
"How many rows do you want to add?", Title:="Add Rows", _
Default:=2, Type:=2) 'le type 1 est nombre
If vRows = False Then Exit Sub
End If
Dim sht As Worksheet, shts() As String, i As Integer
ReDim shts(1 To Worksheets.Application.ActiveWorkbook. _
Windows(1).SelectedSheets.Count)
i = 0
For Each sht In _
Application.ActiveWorkbook.Windows(1).SelectedSheets
Sheets(sht.Name).Select
i = i + 1
shts(i) = sht.Name
Selection.Resize(rowsize:=2).Rows(2).EntireRow. _
Resize(rowsize:=vRows).Insert Shift:=xlDown
Selection.AutoFill Selection.Resize( _
rowsize:=vRows + 1), xlFillDefault
On Error Resume Next 'pour ne manipuler aucune constante dans la gamme
'pour enlever non les formules
Selection.Offset(1).Resize(vRows).EntireRow. _
SpecialCells(xlConstants).ClearContents
Next sht
Worksheets(shts).Select
End Sub
Sub InsertBeforeTotalinColumnA()
' Columns("a:a").Find(What:="total", After:=Range("A2"), LookIn:=xlValues, _
' LookAt:=xlPart, SearchOrder:=xlByColumns, SearchDirection:=xlNext, _
' MatchCase:=False).Offset(-1, 0).Activate
Call InsertRowsAndFillFormulas(1)
End Sub
J'ai trouver une macro qui ajoute une ligne avec les formules
Comment faire pour ne pas copier les formules de la colonne "B"
Merci d'avance
Cordialement
Le rital
'Attribute VB_Name = "InsererLignesAvecFormules"
Sub InsertRowsAndFillFormulas(Optional vRows As Long)
ActiveCell.EntireRow.Select 'Ainsi tu ne dois pas pré-sélectionner la rangée entière
If vRows <> 1 Then
vRows = Application.InputBox(prompt:= _
"How many rows do you want to add?", Title:="Add Rows", _
Default:=2, Type:=2) 'le type 1 est nombre
If vRows = False Then Exit Sub
End If
Dim sht As Worksheet, shts() As String, i As Integer
ReDim shts(1 To Worksheets.Application.ActiveWorkbook. _
Windows(1).SelectedSheets.Count)
i = 0
For Each sht In _
Application.ActiveWorkbook.Windows(1).SelectedSheets
Sheets(sht.Name).Select
i = i + 1
shts(i) = sht.Name
Selection.Resize(rowsize:=2).Rows(2).EntireRow. _
Resize(rowsize:=vRows).Insert Shift:=xlDown
Selection.AutoFill Selection.Resize( _
rowsize:=vRows + 1), xlFillDefault
On Error Resume Next 'pour ne manipuler aucune constante dans la gamme
'pour enlever non les formules
Selection.Offset(1).Resize(vRows).EntireRow. _
SpecialCells(xlConstants).ClearContents
Next sht
Worksheets(shts).Select
End Sub
Sub InsertBeforeTotalinColumnA()
' Columns("a:a").Find(What:="total", After:=Range("A2"), LookIn:=xlValues, _
' LookAt:=xlPart, SearchOrder:=xlByColumns, SearchDirection:=xlNext, _
' MatchCase:=False).Offset(-1, 0).Activate
Call InsertRowsAndFillFormulas(1)
End Sub