Vba .hasformula et .clear contents
Résolu
vbabeginner
-
vbabeginner -
vbabeginner -
Bonjour,
je cherche à faire une petite procédure qui une fois un certain nombres de cellules sélectionnées par l'utilisateur, vérifie si les cellules contiennent ou non une formule et si les cellules n'en contiennent pas, la procédure efface le contenu de ces cellules.
Voici mes lignes de codes:
Sub Myfirstlines()
Dim SelCellules As Range
Dim Cellules As Range
On Error Resume Next
Set SelCellules = Application.InputBox("Select range of cells to act upon", "Cell selection", 8)
For Each Cellules In SelCellules
If Cellules.HasFormula = False Then
Cellules.ClearContents
End If
Next
End Sub
Merci par avance pour votre aide
je cherche à faire une petite procédure qui une fois un certain nombres de cellules sélectionnées par l'utilisateur, vérifie si les cellules contiennent ou non une formule et si les cellules n'en contiennent pas, la procédure efface le contenu de ces cellules.
Voici mes lignes de codes:
Sub Myfirstlines()
Dim SelCellules As Range
Dim Cellules As Range
On Error Resume Next
Set SelCellules = Application.InputBox("Select range of cells to act upon", "Cell selection", 8)
For Each Cellules In SelCellules
If Cellules.HasFormula = False Then
Cellules.ClearContents
End If
Next
End Sub
Merci par avance pour votre aide
2 réponses
Bonjour,
Si la verification concerne aussi les actions simples comme "=A1+B1" chaque formula contient '=' au debut, alors il reste de verifier s'il y a "=" au debut.
Cord, Alena
Si la verification concerne aussi les actions simples comme "=A1+B1" chaque formula contient '=' au debut, alors il reste de verifier s'il y a "=" au debut.
Sub Myfirstlines() Dim SelCellules As Range Dim Cellules As Range On Error Resume Next Set SelCellules = Application.InputBox("Select range of cells to act upon", "Cell selection", Type:=8) For Each Cellules In SelCellules If Left(Cellules.Formula, 1) = "=" Then Cellules.ClearContents End If Next End Sub
Cord, Alena
Bonjour,
Bonne suite
Sub Myfirstlines() Dim Cellules As Range On Error Resume Next 'Mettre le nom de la feuille With Worksheets("feuil1") Set SelCellules = Application.InputBox(prompt:="Select range of cells to act upon", Title:="Cell selection", Type:=8) For Each Cellules In SelCellules If Cellules.HasFormula = True Then Cellules.ClearContents End If Next End With End Sub
Bonne suite
Cord,Alena
je pensais avoir indiqué le type en ajoutant "8" a la fin de mon expression Application.Inputbox mais Type:= semble etre important et la solution à mon probleme.
Cordialement