Création de diagonale dans une cellule avec une macro
Résolu/Fermé
arnd21
Messages postés
11
Date d'inscription
mardi 4 février 2014
Statut
Membre
Dernière intervention
26 mars 2014
-
Modifié par pijaku le 5/02/2014 à 08:44
arnd21 Messages postés 11 Date d'inscription mardi 4 février 2014 Statut Membre Dernière intervention 26 mars 2014 - 6 févr. 2014 à 20:19
arnd21 Messages postés 11 Date d'inscription mardi 4 février 2014 Statut Membre Dernière intervention 26 mars 2014 - 6 févr. 2014 à 20:19
A voir également:
- Création de diagonale dans une cellule avec une macro
- Aller à la ligne dans une cellule excel - Guide
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Creation compte gmail - Guide
- Excel cellule couleur si condition texte - Guide
- Verrouiller une cellule excel - Guide
5 réponses
f894009
Messages postés
17215
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
26 décembre 2024
1 711
4 févr. 2014 à 08:50
4 févr. 2014 à 08:50
Bonjour,
une seule diagonal si pas x en B24
une seule diagonal si pas x en B24
Sub Essai()
'
' Essai Macro
Sheets("Feuil1").Select
' Dim nom As String
nom = Range("B4")
If nom = "x" Then
Sheets("Feuil2").Select
Range("S28").Select
With Selection.Borders(xlDiagonalDown)
.LineStyle = xlContinuous
.ColorIndex = xlAutomatic
.TintAndShade = 0
.Weight = xlThin
End With
With Selection.Borders(xlDiagonalUp)
.LineStyle = xlContinuous
.ColorIndex = xlAutomatic
.TintAndShade = 0
.Weight = xlThin
End With
With Selection
.Borders(xlEdgeLeft).LineStyle = xlNone
.Borders(xlEdgeTop).LineStyle = xlNone
.Borders(xlEdgeBottom).LineStyle = xlNone
.Borders(xlEdgeRight).LineStyle = xlNone
.Borders(xlInsideVertical).LineStyle = xlNone
.Borders(xlInsideHorizontal).LineStyle = xlNone
End With
ElseIf nom = "" Then
Sheets("Feuil2").Select
Range("S28").Select
Selection.Borders(xlDiagonalDown).LineStyle = xlNone
With Selection.Borders(xlDiagonalUp)
.LineStyle = xlContinuous
.ColorIndex = xlAutomatic
.TintAndShade = 0
.Weight = xlThin
End With
End If
End Sub
Utilisateur anonyme
Modifié par pijaku le 5/02/2014 à 08:44
Modifié par pijaku le 5/02/2014 à 08:44
Bonjour,
x en B4 feuille 1 => 2 diagonales en S28 feuille 2
rien en B4 feuille 1 = > plus de diagonales en S28 feuille 2
x en B4 feuille 1 => 2 diagonales en S28 feuille 2
rien en B4 feuille 1 = > plus de diagonales en S28 feuille 2
Sub Essai() ' ' Essai Macro ' Sheets("Feuil1").Select ' Dim nom As String nom = Range("B4") If nom = "x" Then Sheets("Feuil2").Select Range("S28").Select With Selection.Borders(xlDiagonalDown) .LineStyle = xlContinuous .ColorIndex = xlAutomatic .TintAndShade = 0 .Weight = xlThin End With With Selection.Borders(xlDiagonalUp) .LineStyle = xlContinuous .ColorIndex = xlAutomatic .TintAndShade = 0 .Weight = xlThin End With Selection.Borders(xlEdgeLeft).LineStyle = xlNone Selection.Borders(xlEdgeTop).LineStyle = xlNone Selection.Borders(xlEdgeBottom).LineStyle = xlNone Selection.Borders(xlEdgeRight).LineStyle = xlNone Selection.Borders(xlInsideVertical).LineStyle = xlNone Selection.Borders(xlInsideHorizontal).LineStyle = xlNone ElseIf nom = "" Then Sheets("Feuil2").Select Range("S28").Select Selection.Borders(xlDiagonalDown).LineStyle = xlNone Selection.Borders(xlDiagonalUp).LineStyle = xlNone End If End Sub
arnd21
Messages postés
11
Date d'inscription
mardi 4 février 2014
Statut
Membre
Dernière intervention
26 mars 2014
Modifié par pijaku le 5/02/2014 à 08:44
Modifié par pijaku le 5/02/2014 à 08:44
Super merci ca fonctionne!! mais pourquoi doit-on enlever le with and end with :
Merci par avance
ElseIf nom = "" Then
Sheets("Feuil2").Select
Range("S28").Select
Selection.Borders(xlDiagonalDown).LineStyle = xlNone
Selection.Borders(xlDiagonalUp).LineStyle = xlNone
Merci par avance
Si tu veux garder le With et le End With, il faut juste que tu mettes .LineStyle en dessous pour que cela fonctionne correctement
voici la partie de code :
voici la partie de code :
ElseIf nom = "" Then
Sheets("Feuil2").Select
Range("S28").Select
With Selection.Borders(xlDiagonalDown)
.LineStyle = xlNone
End With
With Selection.Borders(xlDiagonalUp)
.LineStyle = xlNone
End With
End If
michel_m
Messages postés
16603
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2023
3 310
5 févr. 2014 à 08:39
5 févr. 2014 à 08:39
Règle de base en VBA: Eviter au maximum les Select-SelectionN !!!
michel_m
Messages postés
16603
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2023
3 310
4 févr. 2014 à 14:03
4 févr. 2014 à 14:03
Bonjour,
Peut-^tre moins lourd:
Peut-^tre moins lourd:
Option Explicit
'----------------------------------------------
Sub Essai()
Dim nom As String
nom = Sheets("Feuil1").Range("B4")
With Sheets("Feuil2").Range("S28")
If nom = "x" Then
.Borders(xlDiagonalDown).Weight = xlThin
.Borders(xlDiagonalUp).Weight = xlThin
.Borders.LineStyle = xlNone
Else
.Borders(xlDiagonalDown).LineStyle = xlNone
.Borders(xlDiagonalUp).LineStyle = xlNone
End If
End With
Sheets(2).Activate
End Sub
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
arnd21
Messages postés
11
Date d'inscription
mardi 4 février 2014
Statut
Membre
Dernière intervention
26 mars 2014
6 févr. 2014 à 20:19
6 févr. 2014 à 20:19
Merci Michel,
J'ai finalement réussi à faire la manip ;-)
Sympa de vous être pencher sur mon sujet.
J'ai finalement réussi à faire la manip ;-)
Sympa de vous être pencher sur mon sujet.