Diego-Andres
XLDnaute Nouveau
Bonsoir,
J'ai un petit problème dans un de mes fichiers.
Je m'explique, j'ai deux boutons l'un pour supprimer des lignes et l'autres pour ajouter des lignes.
Cela marché très bien mais j'ai ajouté des tableau structurés en plus (même nombre de ligne et emplacement que les autres et le code ne fonctionne plus )
J'ai trouvais plusieurs solutions avec plusieurs boutons à chaque nouvelle rangée de tableau mais ça perd l'interactivité que cela avait.
Voici le code pour insérer des lignes:
Voici celui pour supprimer:
J'essaie souvent de trouver des solutions mais là je bloque.
Merci de votre lecture et d'avance de votre aide
J'ai un petit problème dans un de mes fichiers.
Je m'explique, j'ai deux boutons l'un pour supprimer des lignes et l'autres pour ajouter des lignes.
Cela marché très bien mais j'ai ajouté des tableau structurés en plus (même nombre de ligne et emplacement que les autres et le code ne fonctionne plus
J'ai trouvais plusieurs solutions avec plusieurs boutons à chaque nouvelle rangée de tableau mais ça perd l'interactivité que cela avait.
Voici le code pour insérer des lignes:
VB:
Sub Insert_Row() 'Insert a row in any else sheet
Application.Calculation = xlCalculationManual
Application.EnableEvents = False
Dim Cell As Range
ActiveSheet.Unprotect ("test")
n = ActiveCell.Row
' Message d'erreur d'emplacement -------------------------------------------------------
If ActiveSheet.Name = "BUDGET_FORCAST" Then
If n <= 8 Then
If Sheets("HOME_PAGE").Range("F1").Value = "EN" Then
MsgBox ("You can't insert a row at this location"), vbInformation, "Project Tracker:"
ActiveSheet.Protect
Exit Sub
End If
If Sheets("HOME_PAGE").Range("F1").Value = "FR" Then
MsgBox ("Vous ne pouvez pas inserer une ligne a cet emplacement"), vbInformation, "Project Tracker :"
ActiveSheet.Protect
Exit Sub
End If
If Sheets("HOME_PAGE").Range("F1").Value = "ES" Then
MsgBox ("No puedes insertar una línea en este lugar"), vbInformation, "Project Tracker :"
ActiveSheet.Protect
Exit Sub
End If
End If
End If
'Insertion --------------------------------------------------------------------------
ActiveCell.EntireRow.Insert Shift:=xlDown
ActiveCell.Offset(-1, 0).EntireRow.Copy Cells(ActiveCell.Row, 1)
On Error Resume Next
ActiveCell.EntireRow.SpecialCells(xlCellTypeConstants, xlNumbers + xlTextValues + xlLogical + xlErrors).ClearContents
ActiveCell.Activate
ActiveSheet.Protect Password:="test"
Application.EnableEvents = True
Application.Calculation = xlCalculationAutomatic
End Sub
Voici celui pour supprimer:
Code:
Sub Delete_Row() 'Erase a row in any else sheet
Application.Calculation = xlCalculationManual
Application.EnableEvents = False
Dim Cell As Range
ActiveSheet.Unprotect ("test")
' Message de confirmation & suppression -----------------------------------------------------
If Sheets("HOME_PAGE").Range("F1").Value = "EN" Then
If MsgBox("Do you really want to erase this row ?", vbYesNo, "Confirmation") = vbYes Then
ActiveSheet.Rows(ActiveCell.Row).EntireRow.Delete
End If
End If
If Sheets("HOME_PAGE").Range("F1").Value = "FR" Then
If MsgBox("Voulez-vous vraiment supprimer cette ligne ?", vbYesNo, "Confirmation") = vbYes Then
ActiveSheet.Rows(ActiveCell.Row).EntireRow.Delete
End If
End If
If Sheets("HOME_PAGE").Range("F1").Value = "ES" Then
If MsgBox("¿Realmente quieres borrar esa línea?", vbYesNo, "Confirmation") = vbYes Then
ActiveSheet.Rows(ActiveCell.Row).EntireRow.Delete
End If
End If
ActiveCell.Activate
ActiveSheet.Protect Password:="test"
Application.EnableEvents = True
Application.Calculation = xlCalculationAutomatic
End Sub
J'essaie souvent de trouver des solutions mais là je bloque.
Merci de votre lecture et d'avance de votre aide