Mettre une cellule en variable
addict
-
pijaku Messages postés 13513 Date d'inscription Statut Modérateur Dernière intervention -
pijaku Messages postés 13513 Date d'inscription Statut Modérateur Dernière intervention -
Bonjour,
j'ai crée une fonction permettant de réaliser une mise en forme. Ce que j'aimerais faire, c'est pouvoir commencer cette mise en forme à partir de la cellule que je souhaite. Dans mon code, j'ai écrit :
Range("A2").Select
et le reste de ma procédure. Ce que j'aimerais pouvoir faire, c'est commencer à la cellule que je souhaite. je ne sais pas si c'est possible....
J'ai une deuxième question par la même occasion. J'ai crée un userforms qui demande si le matériaux contient du bois ou du verre. Le fait est que le matériaux peut contenir soit du bois, soit du verre, soit les deux, soit rien. J'aimerais que la mise en forme de mon tableau découle de ce choix. Est t'il possible d'avoir une double condition dans une boucle If et si oui, comment faire. J'ai essayé avec and, mais ça ne marche pas. Pour répondre à la question de la contenance en bois et/ou verre, il est possible de répondre "oui" ou "non" par l'intermédiaire de bouton d'option.
merci,
j'ai crée une fonction permettant de réaliser une mise en forme. Ce que j'aimerais faire, c'est pouvoir commencer cette mise en forme à partir de la cellule que je souhaite. Dans mon code, j'ai écrit :
Range("A2").Select
et le reste de ma procédure. Ce que j'aimerais pouvoir faire, c'est commencer à la cellule que je souhaite. je ne sais pas si c'est possible....
J'ai une deuxième question par la même occasion. J'ai crée un userforms qui demande si le matériaux contient du bois ou du verre. Le fait est que le matériaux peut contenir soit du bois, soit du verre, soit les deux, soit rien. J'aimerais que la mise en forme de mon tableau découle de ce choix. Est t'il possible d'avoir une double condition dans une boucle If et si oui, comment faire. J'ai essayé avec and, mais ça ne marche pas. Pour répondre à la question de la contenance en bois et/ou verre, il est possible de répondre "oui" ou "non" par l'intermédiaire de bouton d'option.
merci,
A voir également:
- Mettre une cellule en variable
- Bloquer une cellule excel - Guide
- Excel cellule couleur si condition texte - Guide
- Aller à la ligne dans une cellule excel - Guide
- Diviser une cellule excel en deux horizontalement - Forum Excel
- Séparer une cellule en 2 ✓ - Forum LibreOffice / OpenOffice
7 réponses
Bonjour,
tout d'abord la 1ère question. Elle se traite avec une Inputbox :
Dim valeur As String
valeur = InputBox("saisir dans le format : B1 ou G23 etc...", "cellule")
Range(valeur).Select
2ème question : oui par contre je n'ai pas bien compris la question...
tout d'abord la 1ère question. Elle se traite avec une Inputbox :
Dim valeur As String
valeur = InputBox("saisir dans le format : B1 ou G23 etc...", "cellule")
Range(valeur).Select
2ème question : oui par contre je n'ai pas bien compris la question...
Merci pour la première réponse !
Quand à la deuxième, j'essaye d'expliquer plus clairement :
J'ai un Userforms, qui demande à l'utilisateur si le matériaux contient du bois. il peut répondre par oui ou non à l'aide de case à cocher (J'ai changé par rapport au bouton d'option, inapproprié dans ce cas) . Puis, je répose la même question pour le verre et il y a toujours le choix, par le même principe qu'avant, pour la réponse. Ensuite, je code cela :
Public Sub NextMC_Click()
ActiveWorkbooks = "MaterialCompositeClasseur"
ActiveSheets = "detail"
If NextMC.Enabled = True Then
Call MiseEnpage1
End If
Unload Me
End Sub
Sub YesWood_Click()
If YesWood.Enabled = True Then
Call MiseEnPageWood
End If
End Sub
Private Sub YesRRM_Click()
If YesRRM.Enabled = True Then
Call MiseEnPageRRM
End If
If YesWood.Enabled And YesRRM.Enabled = True Then
Call MiseEnPageWoodRRM
End If
End Sub
je ne sais pas si cela va vous aider.
Quand à la deuxième, j'essaye d'expliquer plus clairement :
J'ai un Userforms, qui demande à l'utilisateur si le matériaux contient du bois. il peut répondre par oui ou non à l'aide de case à cocher (J'ai changé par rapport au bouton d'option, inapproprié dans ce cas) . Puis, je répose la même question pour le verre et il y a toujours le choix, par le même principe qu'avant, pour la réponse. Ensuite, je code cela :
Public Sub NextMC_Click()
ActiveWorkbooks = "MaterialCompositeClasseur"
ActiveSheets = "detail"
If NextMC.Enabled = True Then
Call MiseEnpage1
End If
Unload Me
End Sub
Sub YesWood_Click()
If YesWood.Enabled = True Then
Call MiseEnPageWood
End If
End Sub
Private Sub YesRRM_Click()
If YesRRM.Enabled = True Then
Call MiseEnPageRRM
End If
If YesWood.Enabled And YesRRM.Enabled = True Then
Call MiseEnPageWoodRRM
End If
End Sub
je ne sais pas si cela va vous aider.
et bien les MiseEnPageWood et MiseEnPageRRM utilise toute les deux la cellule G2. Si il y a du bois et du verre, alors ce sont les cellules G2 et H2 qui sont mise en forme. ce que je veux, c'est que l'on puise si l'on se trompe, "enlever la mise en page". j'ai essayé :
Else: Range("G2").Select
ActiveCell.FormulaR1C1 = " "
En faite, je crois que ma demande à juste évolué depuis tout à l'heure ^^
Else: Range("G2").Select
ActiveCell.FormulaR1C1 = " "
En faite, je crois que ma demande à juste évolué depuis tout à l'heure ^^
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Donc le problème ne vient pas du code que tu as donné mais des fonctions : MiseEnPageWood et MiseEnPageRRM ...
Fais voir le code de ces 2 fonctions...
Fais voir le code de ces 2 fonctions...
Voila le premier code. pour MiseEnPageWood.
Public Function()
Range("G2").Select
ActiveCell.FormulaR1C1 = "Certified Wood -FSC Number-"
Range("G2:G3").Select
With Selection
.HorizontalAlignment = xlCenter
.VerticalAlignment = xlBottom
.WrapText = False
.Orientation = 0
.AddIndent = False
.ShrinkToFit = False
.MergeCells = False
End With
Selection.Merge
Range("G2").Select
Selection.Borders(xlDiagonalDown).LineStyle = xlNone
Selection.Borders(xlDiagonalUp).LineStyle = xlNone
With Selection.Borders(xlEdgeLeft)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
With Selection.Borders(xlEdgeTop)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
With Selection.Borders(xlEdgeBottom)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
With Selection.Borders(xlEdgeRight)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
With Selection.Borders(xlInsideHorizontal)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
Columns("A:G").Select
With Selection
.HorizontalAlignment = xlCenter
.VerticalAlignment = xlCenter
.WrapText = True
.Orientation = 0
.AddIndent = False
.ShrinkToFit = False
End With
Range("A2:G2").Select
With Selection.Borders(xlEdgeLeft)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
With Selection.Borders(xlEdgeTop)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
With Selection.Borders(xlEdgeBottom)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
With Selection.Borders(xlEdgeRight)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
With Selection.Borders(xlInsideVertical)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
With Selection.Borders(xlInsideHorizontal)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
End Function
Public Function MiseEnPageRRM()
Range("G2").Select
ActiveCell.FormulaR1C1 = "Glasse"
Range("G2:G3").Select
With Selection
.HorizontalAlignment = xlCenter
.VerticalAlignment = xlBottom
.WrapText = False
.Orientation = 0
.AddIndent = False
.ShrinkToFit = False
.MergeCells = False
End With
Selection.Merge
Range("G2").Select
Selection.Borders(xlDiagonalDown).LineStyle = xlNone
Selection.Borders(xlDiagonalUp).LineStyle = xlNone
With Selection.Borders(xlEdgeLeft)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
With Selection.Borders(xlEdgeTop)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
With Selection.Borders(xlEdgeBottom)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
With Selection.Borders(xlEdgeRight)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
With Selection.Borders(xlInsideHorizontal)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
Columns("A:G").Select
With Selection
.HorizontalAlignment = xlCenter
.VerticalAlignment = xlCenter
.WrapText = True
.Orientation = 0
.AddIndent = False
.ShrinkToFit = False
End With
Range("A2:G2").Select
With Selection.Borders(xlEdgeLeft)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
With Selection.Borders(xlEdgeTop)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
With Selection.Borders(xlEdgeBottom)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
With Selection.Borders(xlEdgeRight)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
With Selection.Borders(xlInsideVertical)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
With Selection.Borders(xlInsideHorizontal)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
End Function
Ce que j'aimerais, c'est que si on choisit oui, puis qu'on change d'avis, toute la mise en page, soit éffacé.
Public Function()
Range("G2").Select
ActiveCell.FormulaR1C1 = "Certified Wood -FSC Number-"
Range("G2:G3").Select
With Selection
.HorizontalAlignment = xlCenter
.VerticalAlignment = xlBottom
.WrapText = False
.Orientation = 0
.AddIndent = False
.ShrinkToFit = False
.MergeCells = False
End With
Selection.Merge
Range("G2").Select
Selection.Borders(xlDiagonalDown).LineStyle = xlNone
Selection.Borders(xlDiagonalUp).LineStyle = xlNone
With Selection.Borders(xlEdgeLeft)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
With Selection.Borders(xlEdgeTop)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
With Selection.Borders(xlEdgeBottom)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
With Selection.Borders(xlEdgeRight)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
With Selection.Borders(xlInsideHorizontal)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
Columns("A:G").Select
With Selection
.HorizontalAlignment = xlCenter
.VerticalAlignment = xlCenter
.WrapText = True
.Orientation = 0
.AddIndent = False
.ShrinkToFit = False
End With
Range("A2:G2").Select
With Selection.Borders(xlEdgeLeft)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
With Selection.Borders(xlEdgeTop)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
With Selection.Borders(xlEdgeBottom)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
With Selection.Borders(xlEdgeRight)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
With Selection.Borders(xlInsideVertical)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
With Selection.Borders(xlInsideHorizontal)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
End Function
Public Function MiseEnPageRRM()
Range("G2").Select
ActiveCell.FormulaR1C1 = "Glasse"
Range("G2:G3").Select
With Selection
.HorizontalAlignment = xlCenter
.VerticalAlignment = xlBottom
.WrapText = False
.Orientation = 0
.AddIndent = False
.ShrinkToFit = False
.MergeCells = False
End With
Selection.Merge
Range("G2").Select
Selection.Borders(xlDiagonalDown).LineStyle = xlNone
Selection.Borders(xlDiagonalUp).LineStyle = xlNone
With Selection.Borders(xlEdgeLeft)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
With Selection.Borders(xlEdgeTop)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
With Selection.Borders(xlEdgeBottom)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
With Selection.Borders(xlEdgeRight)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
With Selection.Borders(xlInsideHorizontal)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
Columns("A:G").Select
With Selection
.HorizontalAlignment = xlCenter
.VerticalAlignment = xlCenter
.WrapText = True
.Orientation = 0
.AddIndent = False
.ShrinkToFit = False
End With
Range("A2:G2").Select
With Selection.Borders(xlEdgeLeft)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
With Selection.Borders(xlEdgeTop)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
With Selection.Borders(xlEdgeBottom)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
With Selection.Borders(xlEdgeRight)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
With Selection.Borders(xlInsideVertical)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
With Selection.Borders(xlInsideHorizontal)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
End Function
Ce que j'aimerais, c'est que si on choisit oui, puis qu'on change d'avis, toute la mise en page, soit éffacé.
Ce que j'aimerais, c'est que si on choisit oui, puis qu'on change d'avis, toute la mise en page, soit éffacé.
Une fois qu'une macro est exécuté, on ne peux pas revenir en arrière. Il te faut une nouvelle macro qui remet tout en place. Crée donc une macro annulemiseenpage... de la même manière que les deux autres
Une fois qu'une macro est exécuté, on ne peux pas revenir en arrière. Il te faut une nouvelle macro qui remet tout en place. Crée donc une macro annulemiseenpage... de la même manière que les deux autres