-----Message d'origine-----
Bonjour Isabelle,
Si tu publiais ta macro et si tu précisais un peu ce que
tu désires, cela aiderait grandement à la conception d'une
à ta difficulté.
Salutations!
"isabelle" a écrit
dans le message de news:359401c3e279$e44ae6a0
Bonjour à tous.
J'ai une macro avec un argument qui fonctionne
parfaitement. Je voudrais maintenant qu'à l'ouverture
d'excel elle s'éxécute avec la valeur de l'argument de mon
choix.
Quelqu'un saurait-il comment procéder ?
Merci
.
-----Message d'origine-----
Bonjour Isabelle,
Si tu publiais ta macro et si tu précisais un peu ce que
tu désires, cela aiderait grandement à la conception d'une
à ta difficulté.
Salutations!
"isabelle" <anonymous@discussions.microsoft.com> a écrit
dans le message de news:359401c3e279$e44ae6a0
Bonjour à tous.
J'ai une macro avec un argument qui fonctionne
parfaitement. Je voudrais maintenant qu'à l'ouverture
d'excel elle s'éxécute avec la valeur de l'argument de mon
choix.
Quelqu'un saurait-il comment procéder ?
Merci
.
-----Message d'origine-----
Bonjour Isabelle,
Si tu publiais ta macro et si tu précisais un peu ce que
tu désires, cela aiderait grandement à la conception d'une
à ta difficulté.
Salutations!
"isabelle" a écrit
dans le message de news:359401c3e279$e44ae6a0
Bonjour à tous.
J'ai une macro avec un argument qui fonctionne
parfaitement. Je voudrais maintenant qu'à l'ouverture
d'excel elle s'éxécute avec la valeur de l'argument de mon
choix.
Quelqu'un saurait-il comment procéder ?
Merci
.
-----Message d'origine-----
Bonjour Isabelle,
Si tu publiais ta macro et si tu précisais un peu ce que
tu désires, cela aiderait grandement à la conception d'une
à ta difficulté.
Salutations!
"isabelle" a écrit
dans le message de news:359401c3e279$e44ae6a0
Bonjour à tous.
J'ai une macro avec un argument qui fonctionne
parfaitement. Je voudrais maintenant qu'à l'ouverture
d'excel elle s'éxécute avec la valeur de l'argument de mon
choix.
Quelqu'un saurait-il comment procéder ?
Merci
.
-----Message d'origine-----
Bonjour Isabelle,
Si tu publiais ta macro et si tu précisais un peu ce que
tu désires, cela aiderait grandement à la conception d'une
à ta difficulté.
Salutations!
"isabelle" <anonymous@discussions.microsoft.com> a écrit
dans le message de news:359401c3e279$e44ae6a0
Bonjour à tous.
J'ai une macro avec un argument qui fonctionne
parfaitement. Je voudrais maintenant qu'à l'ouverture
d'excel elle s'éxécute avec la valeur de l'argument de mon
choix.
Quelqu'un saurait-il comment procéder ?
Merci
.
-----Message d'origine-----
Bonjour Isabelle,
Si tu publiais ta macro et si tu précisais un peu ce que
tu désires, cela aiderait grandement à la conception d'une
à ta difficulté.
Salutations!
"isabelle" a écrit
dans le message de news:359401c3e279$e44ae6a0
Bonjour à tous.
J'ai une macro avec un argument qui fonctionne
parfaitement. Je voudrais maintenant qu'à l'ouverture
d'excel elle s'éxécute avec la valeur de l'argument de mon
choix.
Quelqu'un saurait-il comment procéder ?
Merci
.
-----Message d'origine-----
Bonjour,
Désolé, mais je n'ai pas compris ce que tu désires faire.
Cependant, si tu as une version d'excel 2000 ou plus
macro pourrait être réécrite de cette façon :
'---------------------------
Sub adressRange()
Dim début As String, fin As String
Dim A As String
'AfficherLesLignes
Application.Goto reference:=Range("critère")
A = Split(ActiveWindow.RangeSelection.Address, "$")(2)
début = Left(A, Len(A) - 1)
fin = Split(ActiveWindow.RangeSelection.Address, "$")(4)
If Val(début) > 1 Then
Rows(début & ":" & début - 1).EntireRow.Hidden = True
Else
Rows(fin + 1 & ":280").EntireRow.Hidden = True
End If
ActiveWorkbook.Save
End Sub
'---------------------------
P.S. Je sais que tu veux masquer des lignes.. mais
explique à quel moment tu voudrais le faire( à l'ouverture
Est-ce que ton fichier est ouvert par une macro ? , quel
est le nom de la feuille où ces lignes doivent être
en dernier lieu, quel est le critère qui fait qu'une
ligne doit être masqué ou pas ?
Salutations!
a écrit dans le
message de news:3a3401c3e27f$486e54a0$
Le but : afficher uniquement ce qui est demandé. Dans le
classeur, j'ai des plages nommées.
la macro est la suivante :
Sub adressRange(critère As String)
Dim début, fin As String
Dim pos
AfficherLesLignes
Application.Goto reference:=critère
pos = InStr(ActiveWindow.RangeSelection.Address, ":")
début = Left(ActiveWindow.RangeSelection.Address, pos - 1)
début = Right(début, pos - (1 + 3))
fin = Right(ActiveWindow.RangeSelection.Address, Len
(ActiveWindow.RangeSelection.Address) - pos)
fin = Right(fin, Len(fin) - 3)
If début > 1 Then
critère = "1:" & début - 1
Rows(critère).Select
Selection.EntireRow.Hidden = True
End If
critère = fin + 1 & ":280"
Rows(critère).Select
Selection.EntireRow.Hidden = True
ActiveWorkbook.Save
End Sub-----Message d'origine-----
Bonjour Isabelle,
Si tu publiais ta macro et si tu précisais un peu ce que
tu désires, cela aiderait grandement à la conception d'une
solutionà ta difficulté.
Salutations!
"isabelle" a écrit
dans le message de news:359401c3e279$e44ae6a0
$Bonjour à tous.
J'ai une macro avec un argument qui fonctionne
parfaitement. Je voudrais maintenant qu'à l'ouverture
d'excel elle s'éxécute avec la valeur de l'argument de
mon
choix.
Quelqu'un saurait-il comment procéder ?
Merci
.
.
-----Message d'origine-----
Bonjour,
Désolé, mais je n'ai pas compris ce que tu désires faire.
Cependant, si tu as une version d'excel 2000 ou plus
macro pourrait être réécrite de cette façon :
'---------------------------
Sub adressRange()
Dim début As String, fin As String
Dim A As String
'AfficherLesLignes
Application.Goto reference:=Range("critère")
A = Split(ActiveWindow.RangeSelection.Address, "$")(2)
début = Left(A, Len(A) - 1)
fin = Split(ActiveWindow.RangeSelection.Address, "$")(4)
If Val(début) > 1 Then
Rows(début & ":" & début - 1).EntireRow.Hidden = True
Else
Rows(fin + 1 & ":280").EntireRow.Hidden = True
End If
ActiveWorkbook.Save
End Sub
'---------------------------
P.S. Je sais que tu veux masquer des lignes.. mais
explique à quel moment tu voudrais le faire( à l'ouverture
Est-ce que ton fichier est ouvert par une macro ? , quel
est le nom de la feuille où ces lignes doivent être
en dernier lieu, quel est le critère qui fait qu'une
ligne doit être masqué ou pas ?
Salutations!
<anonymous@discussions.microsoft.com> a écrit dans le
message de news:3a3401c3e27f$486e54a0$a601280a@phx.gbl...
Le but : afficher uniquement ce qui est demandé. Dans le
classeur, j'ai des plages nommées.
la macro est la suivante :
Sub adressRange(critère As String)
Dim début, fin As String
Dim pos
AfficherLesLignes
Application.Goto reference:=critère
pos = InStr(ActiveWindow.RangeSelection.Address, ":")
début = Left(ActiveWindow.RangeSelection.Address, pos - 1)
début = Right(début, pos - (1 + 3))
fin = Right(ActiveWindow.RangeSelection.Address, Len
(ActiveWindow.RangeSelection.Address) - pos)
fin = Right(fin, Len(fin) - 3)
If début > 1 Then
critère = "1:" & début - 1
Rows(critère).Select
Selection.EntireRow.Hidden = True
End If
critère = fin + 1 & ":280"
Rows(critère).Select
Selection.EntireRow.Hidden = True
ActiveWorkbook.Save
End Sub
-----Message d'origine-----
Bonjour Isabelle,
Si tu publiais ta macro et si tu précisais un peu ce que
tu désires, cela aiderait grandement à la conception d'une
solution
à ta difficulté.
Salutations!
"isabelle" <anonymous@discussions.microsoft.com> a écrit
dans le message de news:359401c3e279$e44ae6a0
$a001280a@phx.gbl...
Bonjour à tous.
J'ai une macro avec un argument qui fonctionne
parfaitement. Je voudrais maintenant qu'à l'ouverture
d'excel elle s'éxécute avec la valeur de l'argument de
mon
choix.
Quelqu'un saurait-il comment procéder ?
Merci
.
.
-----Message d'origine-----
Bonjour,
Désolé, mais je n'ai pas compris ce que tu désires faire.
Cependant, si tu as une version d'excel 2000 ou plus
macro pourrait être réécrite de cette façon :
'---------------------------
Sub adressRange()
Dim début As String, fin As String
Dim A As String
'AfficherLesLignes
Application.Goto reference:=Range("critère")
A = Split(ActiveWindow.RangeSelection.Address, "$")(2)
début = Left(A, Len(A) - 1)
fin = Split(ActiveWindow.RangeSelection.Address, "$")(4)
If Val(début) > 1 Then
Rows(début & ":" & début - 1).EntireRow.Hidden = True
Else
Rows(fin + 1 & ":280").EntireRow.Hidden = True
End If
ActiveWorkbook.Save
End Sub
'---------------------------
P.S. Je sais que tu veux masquer des lignes.. mais
explique à quel moment tu voudrais le faire( à l'ouverture
Est-ce que ton fichier est ouvert par une macro ? , quel
est le nom de la feuille où ces lignes doivent être
en dernier lieu, quel est le critère qui fait qu'une
ligne doit être masqué ou pas ?
Salutations!
a écrit dans le
message de news:3a3401c3e27f$486e54a0$
Le but : afficher uniquement ce qui est demandé. Dans le
classeur, j'ai des plages nommées.
la macro est la suivante :
Sub adressRange(critère As String)
Dim début, fin As String
Dim pos
AfficherLesLignes
Application.Goto reference:=critère
pos = InStr(ActiveWindow.RangeSelection.Address, ":")
début = Left(ActiveWindow.RangeSelection.Address, pos - 1)
début = Right(début, pos - (1 + 3))
fin = Right(ActiveWindow.RangeSelection.Address, Len
(ActiveWindow.RangeSelection.Address) - pos)
fin = Right(fin, Len(fin) - 3)
If début > 1 Then
critère = "1:" & début - 1
Rows(critère).Select
Selection.EntireRow.Hidden = True
End If
critère = fin + 1 & ":280"
Rows(critère).Select
Selection.EntireRow.Hidden = True
ActiveWorkbook.Save
End Sub-----Message d'origine-----
Bonjour Isabelle,
Si tu publiais ta macro et si tu précisais un peu ce que
tu désires, cela aiderait grandement à la conception d'une
solutionà ta difficulté.
Salutations!
"isabelle" a écrit
dans le message de news:359401c3e279$e44ae6a0
$Bonjour à tous.
J'ai une macro avec un argument qui fonctionne
parfaitement. Je voudrais maintenant qu'à l'ouverture
d'excel elle s'éxécute avec la valeur de l'argument de
mon
choix.
Quelqu'un saurait-il comment procéder ?
Merci
.
.
-----Message d'origine-----
Bonjour,
Désolé, mais je n'ai pas compris ce que tu désires faire.
Cependant, si tu as une version d'excel 2000 ou plus
macro pourrait être réécrite de cette façon :
'---------------------------
Sub adressRange()
Dim début As String, fin As String
Dim A As String
'AfficherLesLignes
Application.Goto reference:=Range("critère")
A = Split(ActiveWindow.RangeSelection.Address, "$")(2)
début = Left(A, Len(A) - 1)
fin = Split(ActiveWindow.RangeSelection.Address, "$")(4)
If Val(début) > 1 Then
Rows(début & ":" & début - 1).EntireRow.Hidden = True
Else
Rows(fin + 1 & ":280").EntireRow.Hidden = True
End If
ActiveWorkbook.Save
End Sub
'---------------------------
P.S. Je sais que tu veux masquer des lignes.. mais
explique à quel moment tu voudrais le faire( à l'ouverture
Est-ce que ton fichier est ouvert par une macro ? , quel
est le nom de la feuille où ces lignes doivent être
en dernier lieu, quel est le critère qui fait qu'une
ligne doit être masqué ou pas ?
Salutations!
a écrit dans le
message de news:3a3401c3e27f$486e54a0$
Le but : afficher uniquement ce qui est demandé. Dans le
classeur, j'ai des plages nommées.
la macro est la suivante :
Sub adressRange(critère As String)
Dim début, fin As String
Dim pos
AfficherLesLignes
Application.Goto reference:=critère
pos = InStr(ActiveWindow.RangeSelection.Address, ":")
début = Left(ActiveWindow.RangeSelection.Address, pos - 1)
début = Right(début, pos - (1 + 3))
fin = Right(ActiveWindow.RangeSelection.Address, Len
(ActiveWindow.RangeSelection.Address) - pos)
fin = Right(fin, Len(fin) - 3)
If début > 1 Then
critère = "1:" & début - 1
Rows(critère).Select
Selection.EntireRow.Hidden = True
End If
critère = fin + 1 & ":280"
Rows(critère).Select
Selection.EntireRow.Hidden = True
ActiveWorkbook.Save
End Sub-----Message d'origine-----
Bonjour Isabelle,
Si tu publiais ta macro et si tu précisais un peu ce que
tu désires, cela aiderait grandement à la conception d'une
solutionà ta difficulté.
Salutations!
"isabelle" a écrit
dans le message de news:359401c3e279$e44ae6a0
$Bonjour à tous.
J'ai une macro avec un argument qui fonctionne
parfaitement. Je voudrais maintenant qu'à l'ouverture
d'excel elle s'éxécute avec la valeur de l'argument de
mon
choix.
Quelqu'un saurait-il comment procéder ?
Merci
.
.
-----Message d'origine-----
Bonjour,
Désolé, mais je n'ai pas compris ce que tu désires faire.
Cependant, si tu as une version d'excel 2000 ou plus
macro pourrait être réécrite de cette façon :
'---------------------------
Sub adressRange()
Dim début As String, fin As String
Dim A As String
'AfficherLesLignes
Application.Goto reference:=Range("critère")
A = Split(ActiveWindow.RangeSelection.Address, "$")(2)
début = Left(A, Len(A) - 1)
fin = Split(ActiveWindow.RangeSelection.Address, "$")(4)
If Val(début) > 1 Then
Rows(début & ":" & début - 1).EntireRow.Hidden = True
Else
Rows(fin + 1 & ":280").EntireRow.Hidden = True
End If
ActiveWorkbook.Save
End Sub
'---------------------------
P.S. Je sais que tu veux masquer des lignes.. mais
explique à quel moment tu voudrais le faire( à l'ouverture
Est-ce que ton fichier est ouvert par une macro ? , quel
est le nom de la feuille où ces lignes doivent être
en dernier lieu, quel est le critère qui fait qu'une
ligne doit être masqué ou pas ?
Salutations!
<anonymous@discussions.microsoft.com> a écrit dans le
message de news:3a3401c3e27f$486e54a0$a601280a@phx.gbl...
Le but : afficher uniquement ce qui est demandé. Dans le
classeur, j'ai des plages nommées.
la macro est la suivante :
Sub adressRange(critère As String)
Dim début, fin As String
Dim pos
AfficherLesLignes
Application.Goto reference:=critère
pos = InStr(ActiveWindow.RangeSelection.Address, ":")
début = Left(ActiveWindow.RangeSelection.Address, pos - 1)
début = Right(début, pos - (1 + 3))
fin = Right(ActiveWindow.RangeSelection.Address, Len
(ActiveWindow.RangeSelection.Address) - pos)
fin = Right(fin, Len(fin) - 3)
If début > 1 Then
critère = "1:" & début - 1
Rows(critère).Select
Selection.EntireRow.Hidden = True
End If
critère = fin + 1 & ":280"
Rows(critère).Select
Selection.EntireRow.Hidden = True
ActiveWorkbook.Save
End Sub
-----Message d'origine-----
Bonjour Isabelle,
Si tu publiais ta macro et si tu précisais un peu ce que
tu désires, cela aiderait grandement à la conception d'une
solution
à ta difficulté.
Salutations!
"isabelle" <anonymous@discussions.microsoft.com> a écrit
dans le message de news:359401c3e279$e44ae6a0
$a001280a@phx.gbl...
Bonjour à tous.
J'ai une macro avec un argument qui fonctionne
parfaitement. Je voudrais maintenant qu'à l'ouverture
d'excel elle s'éxécute avec la valeur de l'argument de
mon
choix.
Quelqu'un saurait-il comment procéder ?
Merci
.
.
-----Message d'origine-----
Bonjour,
Désolé, mais je n'ai pas compris ce que tu désires faire.
Cependant, si tu as une version d'excel 2000 ou plus
macro pourrait être réécrite de cette façon :
'---------------------------
Sub adressRange()
Dim début As String, fin As String
Dim A As String
'AfficherLesLignes
Application.Goto reference:=Range("critère")
A = Split(ActiveWindow.RangeSelection.Address, "$")(2)
début = Left(A, Len(A) - 1)
fin = Split(ActiveWindow.RangeSelection.Address, "$")(4)
If Val(début) > 1 Then
Rows(début & ":" & début - 1).EntireRow.Hidden = True
Else
Rows(fin + 1 & ":280").EntireRow.Hidden = True
End If
ActiveWorkbook.Save
End Sub
'---------------------------
P.S. Je sais que tu veux masquer des lignes.. mais
explique à quel moment tu voudrais le faire( à l'ouverture
Est-ce que ton fichier est ouvert par une macro ? , quel
est le nom de la feuille où ces lignes doivent être
en dernier lieu, quel est le critère qui fait qu'une
ligne doit être masqué ou pas ?
Salutations!
a écrit dans le
message de news:3a3401c3e27f$486e54a0$
Le but : afficher uniquement ce qui est demandé. Dans le
classeur, j'ai des plages nommées.
la macro est la suivante :
Sub adressRange(critère As String)
Dim début, fin As String
Dim pos
AfficherLesLignes
Application.Goto reference:=critère
pos = InStr(ActiveWindow.RangeSelection.Address, ":")
début = Left(ActiveWindow.RangeSelection.Address, pos - 1)
début = Right(début, pos - (1 + 3))
fin = Right(ActiveWindow.RangeSelection.Address, Len
(ActiveWindow.RangeSelection.Address) - pos)
fin = Right(fin, Len(fin) - 3)
If début > 1 Then
critère = "1:" & début - 1
Rows(critère).Select
Selection.EntireRow.Hidden = True
End If
critère = fin + 1 & ":280"
Rows(critère).Select
Selection.EntireRow.Hidden = True
ActiveWorkbook.Save
End Sub-----Message d'origine-----
Bonjour Isabelle,
Si tu publiais ta macro et si tu précisais un peu ce que
tu désires, cela aiderait grandement à la conception d'une
solutionà ta difficulté.
Salutations!
"isabelle" a écrit
dans le message de news:359401c3e279$e44ae6a0
$Bonjour à tous.
J'ai une macro avec un argument qui fonctionne
parfaitement. Je voudrais maintenant qu'à l'ouverture
d'excel elle s'éxécute avec la valeur de l'argument de
mon
choix.
Quelqu'un saurait-il comment procéder ?
Merci
.
.
-----Message d'origine-----
Bonjour Isabelle,
Je te propose cette macro :
Tu n'as qu'à définir dans cette ligne de code, le nom de
la plage nommée qui doit s'afficher.
Critère étant le nom de la plage nommée, et tu auras que
ces lignes d'afficher.
Set Rg = Range("critère")
Est-ce que cela te convient ?
'-------------------------
Sub MasquéLignes()
Dim Rg As Range
Set Rg = Range("critère")
Application.ScreenUpdating = False
Application.Goto reference:=Rg
With Worksheets(Rg.Parent.Name)
.ScrollArea = ""
Cells.EntireRow.Hidden = True
Rg.EntireRow.Hidden = False
ActiveWindow.ScrollRow = Rg(1).Row
Rg(1).Select
End With
End Sub
'-------------------------
Salutations!
"Isabelle" a écrit
dans le message de news:3a7901c3e289$866d1ac0
Merci pour l'amélioration de la macro. Cela fait quelque
temps que je ne m'y suis collée.
En fait, mon objectif est lié au web. Lorsque que
quelqu'un clic sur un lien, je ne veux afficher que la
catégorie que ce lien représente.
Exemple : classeur regroupant l'ensemble des composants
d'un PC. En cliquant sur "DD" (page web) je n'affiche que
ce qui est en rapport avec les disques durs. D'où la
macro.
Donc quand je clique sur le lien, excel doit ouvrir le
classeur et n'afficher que les infos relatives à "DD".
Donc j'ai créé des plages nommées dans excel pour chaque
catégorie désirée. Ainsi lorsque je demande "boitier"
seuls les éléments concernés apparraissent.
Merci de ton aide.-----Message d'origine-----
Bonjour,
Désolé, mais je n'ai pas compris ce que tu désires faire.
Cependant, si tu as une version d'excel 2000 ou plus
récente, tamacro pourrait être réécrite de cette façon :
'---------------------------
Sub adressRange()
Dim début As String, fin As String
Dim A As String
'AfficherLesLignes
Application.Goto reference:=Range("critère")
A = Split(ActiveWindow.RangeSelection.Address, "$")(2)
début = Left(A, Len(A) - 1)
fin = Split(ActiveWindow.RangeSelection.Address, "$")(4)
If Val(début) > 1 Then
Rows(début & ":" & début - 1).EntireRow.Hidden = True
Else
Rows(fin + 1 & ":280").EntireRow.Hidden = True
End If
ActiveWorkbook.Save
End Sub
'---------------------------
P.S. Je sais que tu veux masquer des lignes.. mais
explique à quel moment tu voudrais le faire( à l'ouverture
du fichier ?Est-ce que ton fichier est ouvert par une macro ? , quel
est le nom de la feuille où ces lignes doivent être
masqué? ) . Eten dernier lieu, quel est le critère qui fait qu'une
ligne doit être masqué ou pas ?
Salutations!
a écrit dans le
message de news:3a3401c3e27f$486e54a0$Le but : afficher uniquement ce qui est demandé. Dans le
classeur, j'ai des plages nommées.
la macro est la suivante :
Sub adressRange(critère As String)
Dim début, fin As String
Dim pos
AfficherLesLignes
Application.Goto reference:=critère
pos = InStr(ActiveWindow.RangeSelection.Address, ":")
début = Left(ActiveWindow.RangeSelection.Address, pos -
1)
début = Right(début, pos - (1 + 3))
fin = Right(ActiveWindow.RangeSelection.Address, Len
(ActiveWindow.RangeSelection.Address) - pos)
fin = Right(fin, Len(fin) - 3)
If début > 1 Then
critère = "1:" & début - 1
Rows(critère).Select
Selection.EntireRow.Hidden = True
End If
critère = fin + 1 & ":280"
Rows(critère).Select
Selection.EntireRow.Hidden = True
ActiveWorkbook.Save
End Sub-----Message d'origine-----
Bonjour Isabelle,
Si tu publiais ta macro et si tu précisais un peu ce que
tu désires, cela aiderait grandement à la conception
d'une
solutionà ta difficulté.
Salutations!
"isabelle" a écrit
dans le message de news:359401c3e279$e44ae6a0
$Bonjour à tous.
J'ai une macro avec un argument qui fonctionne
parfaitement. Je voudrais maintenant qu'à l'ouverture
d'excel elle s'éxécute avec la valeur de l'argument de
monchoix.
Quelqu'un saurait-il comment procéder ?
Merci
.
.
.
-----Message d'origine-----
Bonjour Isabelle,
Je te propose cette macro :
Tu n'as qu'à définir dans cette ligne de code, le nom de
la plage nommée qui doit s'afficher.
Critère étant le nom de la plage nommée, et tu auras que
ces lignes d'afficher.
Set Rg = Range("critère")
Est-ce que cela te convient ?
'-------------------------
Sub MasquéLignes()
Dim Rg As Range
Set Rg = Range("critère")
Application.ScreenUpdating = False
Application.Goto reference:=Rg
With Worksheets(Rg.Parent.Name)
.ScrollArea = ""
Cells.EntireRow.Hidden = True
Rg.EntireRow.Hidden = False
ActiveWindow.ScrollRow = Rg(1).Row
Rg(1).Select
End With
End Sub
'-------------------------
Salutations!
"Isabelle" <anonymous@discussions.microsoft.com> a écrit
dans le message de news:3a7901c3e289$866d1ac0
Merci pour l'amélioration de la macro. Cela fait quelque
temps que je ne m'y suis collée.
En fait, mon objectif est lié au web. Lorsque que
quelqu'un clic sur un lien, je ne veux afficher que la
catégorie que ce lien représente.
Exemple : classeur regroupant l'ensemble des composants
d'un PC. En cliquant sur "DD" (page web) je n'affiche que
ce qui est en rapport avec les disques durs. D'où la
macro.
Donc quand je clique sur le lien, excel doit ouvrir le
classeur et n'afficher que les infos relatives à "DD".
Donc j'ai créé des plages nommées dans excel pour chaque
catégorie désirée. Ainsi lorsque je demande "boitier"
seuls les éléments concernés apparraissent.
Merci de ton aide.
-----Message d'origine-----
Bonjour,
Désolé, mais je n'ai pas compris ce que tu désires faire.
Cependant, si tu as une version d'excel 2000 ou plus
récente, ta
macro pourrait être réécrite de cette façon :
'---------------------------
Sub adressRange()
Dim début As String, fin As String
Dim A As String
'AfficherLesLignes
Application.Goto reference:=Range("critère")
A = Split(ActiveWindow.RangeSelection.Address, "$")(2)
début = Left(A, Len(A) - 1)
fin = Split(ActiveWindow.RangeSelection.Address, "$")(4)
If Val(début) > 1 Then
Rows(début & ":" & début - 1).EntireRow.Hidden = True
Else
Rows(fin + 1 & ":280").EntireRow.Hidden = True
End If
ActiveWorkbook.Save
End Sub
'---------------------------
P.S. Je sais que tu veux masquer des lignes.. mais
explique à quel moment tu voudrais le faire( à l'ouverture
du fichier ?
Est-ce que ton fichier est ouvert par une macro ? , quel
est le nom de la feuille où ces lignes doivent être
masqué? ) . Et
en dernier lieu, quel est le critère qui fait qu'une
ligne doit être masqué ou pas ?
Salutations!
<anonymous@discussions.microsoft.com> a écrit dans le
message de news:3a3401c3e27f$486e54a0$a601280a@phx.gbl...
Le but : afficher uniquement ce qui est demandé. Dans le
classeur, j'ai des plages nommées.
la macro est la suivante :
Sub adressRange(critère As String)
Dim début, fin As String
Dim pos
AfficherLesLignes
Application.Goto reference:=critère
pos = InStr(ActiveWindow.RangeSelection.Address, ":")
début = Left(ActiveWindow.RangeSelection.Address, pos -
1)
début = Right(début, pos - (1 + 3))
fin = Right(ActiveWindow.RangeSelection.Address, Len
(ActiveWindow.RangeSelection.Address) - pos)
fin = Right(fin, Len(fin) - 3)
If début > 1 Then
critère = "1:" & début - 1
Rows(critère).Select
Selection.EntireRow.Hidden = True
End If
critère = fin + 1 & ":280"
Rows(critère).Select
Selection.EntireRow.Hidden = True
ActiveWorkbook.Save
End Sub
-----Message d'origine-----
Bonjour Isabelle,
Si tu publiais ta macro et si tu précisais un peu ce que
tu désires, cela aiderait grandement à la conception
d'une
solution
à ta difficulté.
Salutations!
"isabelle" <anonymous@discussions.microsoft.com> a écrit
dans le message de news:359401c3e279$e44ae6a0
$a001280a@phx.gbl...
Bonjour à tous.
J'ai une macro avec un argument qui fonctionne
parfaitement. Je voudrais maintenant qu'à l'ouverture
d'excel elle s'éxécute avec la valeur de l'argument de
mon
choix.
Quelqu'un saurait-il comment procéder ?
Merci
.
.
.
-----Message d'origine-----
Bonjour Isabelle,
Je te propose cette macro :
Tu n'as qu'à définir dans cette ligne de code, le nom de
la plage nommée qui doit s'afficher.
Critère étant le nom de la plage nommée, et tu auras que
ces lignes d'afficher.
Set Rg = Range("critère")
Est-ce que cela te convient ?
'-------------------------
Sub MasquéLignes()
Dim Rg As Range
Set Rg = Range("critère")
Application.ScreenUpdating = False
Application.Goto reference:=Rg
With Worksheets(Rg.Parent.Name)
.ScrollArea = ""
Cells.EntireRow.Hidden = True
Rg.EntireRow.Hidden = False
ActiveWindow.ScrollRow = Rg(1).Row
Rg(1).Select
End With
End Sub
'-------------------------
Salutations!
"Isabelle" a écrit
dans le message de news:3a7901c3e289$866d1ac0
Merci pour l'amélioration de la macro. Cela fait quelque
temps que je ne m'y suis collée.
En fait, mon objectif est lié au web. Lorsque que
quelqu'un clic sur un lien, je ne veux afficher que la
catégorie que ce lien représente.
Exemple : classeur regroupant l'ensemble des composants
d'un PC. En cliquant sur "DD" (page web) je n'affiche que
ce qui est en rapport avec les disques durs. D'où la
macro.
Donc quand je clique sur le lien, excel doit ouvrir le
classeur et n'afficher que les infos relatives à "DD".
Donc j'ai créé des plages nommées dans excel pour chaque
catégorie désirée. Ainsi lorsque je demande "boitier"
seuls les éléments concernés apparraissent.
Merci de ton aide.-----Message d'origine-----
Bonjour,
Désolé, mais je n'ai pas compris ce que tu désires faire.
Cependant, si tu as une version d'excel 2000 ou plus
récente, tamacro pourrait être réécrite de cette façon :
'---------------------------
Sub adressRange()
Dim début As String, fin As String
Dim A As String
'AfficherLesLignes
Application.Goto reference:=Range("critère")
A = Split(ActiveWindow.RangeSelection.Address, "$")(2)
début = Left(A, Len(A) - 1)
fin = Split(ActiveWindow.RangeSelection.Address, "$")(4)
If Val(début) > 1 Then
Rows(début & ":" & début - 1).EntireRow.Hidden = True
Else
Rows(fin + 1 & ":280").EntireRow.Hidden = True
End If
ActiveWorkbook.Save
End Sub
'---------------------------
P.S. Je sais que tu veux masquer des lignes.. mais
explique à quel moment tu voudrais le faire( à l'ouverture
du fichier ?Est-ce que ton fichier est ouvert par une macro ? , quel
est le nom de la feuille où ces lignes doivent être
masqué? ) . Eten dernier lieu, quel est le critère qui fait qu'une
ligne doit être masqué ou pas ?
Salutations!
a écrit dans le
message de news:3a3401c3e27f$486e54a0$Le but : afficher uniquement ce qui est demandé. Dans le
classeur, j'ai des plages nommées.
la macro est la suivante :
Sub adressRange(critère As String)
Dim début, fin As String
Dim pos
AfficherLesLignes
Application.Goto reference:=critère
pos = InStr(ActiveWindow.RangeSelection.Address, ":")
début = Left(ActiveWindow.RangeSelection.Address, pos -
1)
début = Right(début, pos - (1 + 3))
fin = Right(ActiveWindow.RangeSelection.Address, Len
(ActiveWindow.RangeSelection.Address) - pos)
fin = Right(fin, Len(fin) - 3)
If début > 1 Then
critère = "1:" & début - 1
Rows(critère).Select
Selection.EntireRow.Hidden = True
End If
critère = fin + 1 & ":280"
Rows(critère).Select
Selection.EntireRow.Hidden = True
ActiveWorkbook.Save
End Sub-----Message d'origine-----
Bonjour Isabelle,
Si tu publiais ta macro et si tu précisais un peu ce que
tu désires, cela aiderait grandement à la conception
d'une
solutionà ta difficulté.
Salutations!
"isabelle" a écrit
dans le message de news:359401c3e279$e44ae6a0
$Bonjour à tous.
J'ai une macro avec un argument qui fonctionne
parfaitement. Je voudrais maintenant qu'à l'ouverture
d'excel elle s'éxécute avec la valeur de l'argument de
monchoix.
Quelqu'un saurait-il comment procéder ?
Merci
.
.
.