Bonjour Hua Seng,
Copie cette procédure dans le ThisWorkbook de ton classeur :
Dans cette ligne de code, remplace les noms des feuilles par celles de ton
application.
Arr = Array("Feuil1", "Feuil2", "Feuil3", "Feuil4", "Feuil5")
Voici le format retenu pour l'affichage de tes données en Colonne B:B,
libre à toi d'en choisir un autre.
rg.NumberFormat = "dd/mm/yy"
'-------------------------------
Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target
As Range)
Dim Arr(), Rg As Range
Arr = Array("Feuil1", "Feuil2", "Feuil3")
If Not IsError(Application.Match(Sh.Name, Arr, 0)) Then
Set rg = Intersect(Target, Range("B:B"))
If Not rg Is Nothing Then
Application.CommandBars(1).Controls(5).Controls(1).Enabled = False
rg.NumberFormat = "dd/mm/yy"
Else
Application.CommandBars(1).Controls(5).Controls(1).Enabled = True
End If
End If
Set Rg = Nothing
End Sub
'-------------------------------
Salutations!
"Hua Seng" a écrit dans le message de
news:
Bjrs tous le monde.
Je viens vers vous pr 1 question. Comment interdire par vba sur plusieurs
feuilles ( 5 par exemple, sur la même colonne, en occurence B:B ), le
format
de date style jj.mm.aa ou jj.mm.aaaa.
J'ai fait par l' enregistreur de macro sous excel pro et j'obtiens le code
suivant :
Sub Interdiction()
Range("B2:B26").Select
With Selection.Validation
.Delete
.Add Type:=xlValidateDate, AlertStyle:=xlValidAlertStop,
Operator: > _
xlBetween, Formula1:="1/1/1900", Formula2:="12/31/3000"
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = ""
.ErrorTitle = ""
.InputMessage = ""
.ErrorMessage = ""
.ShowInput = True
.ShowError = True
End With
End Sub
De là, j'ai essayé de déclarer qu'il y a 5 feuilles ds mon classeur et que
la colonne B:B auront pr format de date jj/mm/aa ou jj/mm/aaaa, tjs par
l'enregistreur de macro mais j'arrive pas, qq'1 parmi vous a une idée.
D'avance, merci pr vos guides
Seng
Bonjour Hua Seng,
Copie cette procédure dans le ThisWorkbook de ton classeur :
Dans cette ligne de code, remplace les noms des feuilles par celles de ton
application.
Arr = Array("Feuil1", "Feuil2", "Feuil3", "Feuil4", "Feuil5")
Voici le format retenu pour l'affichage de tes données en Colonne B:B,
libre à toi d'en choisir un autre.
rg.NumberFormat = "dd/mm/yy"
'-------------------------------
Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target
As Range)
Dim Arr(), Rg As Range
Arr = Array("Feuil1", "Feuil2", "Feuil3")
If Not IsError(Application.Match(Sh.Name, Arr, 0)) Then
Set rg = Intersect(Target, Range("B:B"))
If Not rg Is Nothing Then
Application.CommandBars(1).Controls(5).Controls(1).Enabled = False
rg.NumberFormat = "dd/mm/yy"
Else
Application.CommandBars(1).Controls(5).Controls(1).Enabled = True
End If
End If
Set Rg = Nothing
End Sub
'-------------------------------
Salutations!
"Hua Seng" <senghua@club-internet.fr> a écrit dans le message de
news:OipEFwbYEHA.732@TK2MSFTNGP10.phx.gbl...
Bjrs tous le monde.
Je viens vers vous pr 1 question. Comment interdire par vba sur plusieurs
feuilles ( 5 par exemple, sur la même colonne, en occurence B:B ), le
format
de date style jj.mm.aa ou jj.mm.aaaa.
J'ai fait par l' enregistreur de macro sous excel pro et j'obtiens le code
suivant :
Sub Interdiction()
Range("B2:B26").Select
With Selection.Validation
.Delete
.Add Type:=xlValidateDate, AlertStyle:=xlValidAlertStop,
Operator: > _
xlBetween, Formula1:="1/1/1900", Formula2:="12/31/3000"
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = ""
.ErrorTitle = ""
.InputMessage = ""
.ErrorMessage = ""
.ShowInput = True
.ShowError = True
End With
End Sub
De là, j'ai essayé de déclarer qu'il y a 5 feuilles ds mon classeur et que
la colonne B:B auront pr format de date jj/mm/aa ou jj/mm/aaaa, tjs par
l'enregistreur de macro mais j'arrive pas, qq'1 parmi vous a une idée.
D'avance, merci pr vos guides
Seng
Bonjour Hua Seng,
Copie cette procédure dans le ThisWorkbook de ton classeur :
Dans cette ligne de code, remplace les noms des feuilles par celles de ton
application.
Arr = Array("Feuil1", "Feuil2", "Feuil3", "Feuil4", "Feuil5")
Voici le format retenu pour l'affichage de tes données en Colonne B:B,
libre à toi d'en choisir un autre.
rg.NumberFormat = "dd/mm/yy"
'-------------------------------
Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target
As Range)
Dim Arr(), Rg As Range
Arr = Array("Feuil1", "Feuil2", "Feuil3")
If Not IsError(Application.Match(Sh.Name, Arr, 0)) Then
Set rg = Intersect(Target, Range("B:B"))
If Not rg Is Nothing Then
Application.CommandBars(1).Controls(5).Controls(1).Enabled = False
rg.NumberFormat = "dd/mm/yy"
Else
Application.CommandBars(1).Controls(5).Controls(1).Enabled = True
End If
End If
Set Rg = Nothing
End Sub
'-------------------------------
Salutations!
"Hua Seng" a écrit dans le message de
news:
Bjrs tous le monde.
Je viens vers vous pr 1 question. Comment interdire par vba sur plusieurs
feuilles ( 5 par exemple, sur la même colonne, en occurence B:B ), le
format
de date style jj.mm.aa ou jj.mm.aaaa.
J'ai fait par l' enregistreur de macro sous excel pro et j'obtiens le code
suivant :
Sub Interdiction()
Range("B2:B26").Select
With Selection.Validation
.Delete
.Add Type:=xlValidateDate, AlertStyle:=xlValidAlertStop,
Operator: > _
xlBetween, Formula1:="1/1/1900", Formula2:="12/31/3000"
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = ""
.ErrorTitle = ""
.InputMessage = ""
.ErrorMessage = ""
.ShowInput = True
.ShowError = True
End With
End Sub
De là, j'ai essayé de déclarer qu'il y a 5 feuilles ds mon classeur et que
la colonne B:B auront pr format de date jj/mm/aa ou jj/mm/aaaa, tjs par
l'enregistreur de macro mais j'arrive pas, qq'1 parmi vous a une idée.
D'avance, merci pr vos guides
Seng
Bonjour Hua Seng,
Copie cette procédure dans le ThisWorkbook de ton classeur :
Dans cette ligne de code, remplace les noms des feuilles par celles de ton
application.
Arr = Array("Feuil1", "Feuil2", "Feuil3", "Feuil4", "Feuil5")
Voici le format retenu pour l'affichage de tes données en Colonne B:B,
libre à toi d'en choisir un autre.
rg.NumberFormat = "dd/mm/yy"
'-------------------------------
Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target
As Range)
Dim Arr(), Rg As Range
Arr = Array("Feuil1", "Feuil2", "Feuil3")
If Not IsError(Application.Match(Sh.Name, Arr, 0)) Then
Set rg = Intersect(Target, Range("B:B"))
If Not rg Is Nothing Then
Application.CommandBars(1).Controls(5).Controls(1).Enabled = False
rg.NumberFormat = "dd/mm/yy"
Else
Application.CommandBars(1).Controls(5).Controls(1).Enabled = True
End If
End If
Set Rg = Nothing
End Sub
'-------------------------------
Salutations!
"Hua Seng" a écrit dans le message de
news:
Bjrs tous le monde.
Je viens vers vous pr 1 question. Comment interdire par vba sur plusieurs
feuilles ( 5 par exemple, sur la même colonne, en occurence B:B ), le
format
de date style jj.mm.aa ou jj.mm.aaaa.
J'ai fait par l' enregistreur de macro sous excel pro et j'obtiens le code
suivant :
Sub Interdiction()
Range("B2:B26").Select
With Selection.Validation
.Delete
.Add Type:=xlValidateDate, AlertStyle:=xlValidAlertStop,
Operator: > _
xlBetween, Formula1:="1/1/1900", Formula2:="12/31/3000"
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = ""
.ErrorTitle = ""
.InputMessage = ""
.ErrorMessage = ""
.ShowInput = True
.ShowError = True
End With
End Sub
De là, j'ai essayé de déclarer qu'il y a 5 feuilles ds mon classeur et que
les utilisateurs peuvent utiliser seulement >sur la colonne B:B que le
l'enregistreur de macro mais j'arrive pas, qq'1 parmi vous a une idée.
D'avance, merci pr vos guides
Seng
Bonjour Hua Seng,
Copie cette procédure dans le ThisWorkbook de ton classeur :
Dans cette ligne de code, remplace les noms des feuilles par celles de ton
application.
Arr = Array("Feuil1", "Feuil2", "Feuil3", "Feuil4", "Feuil5")
Voici le format retenu pour l'affichage de tes données en Colonne B:B,
libre à toi d'en choisir un autre.
rg.NumberFormat = "dd/mm/yy"
'-------------------------------
Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target
As Range)
Dim Arr(), Rg As Range
Arr = Array("Feuil1", "Feuil2", "Feuil3")
If Not IsError(Application.Match(Sh.Name, Arr, 0)) Then
Set rg = Intersect(Target, Range("B:B"))
If Not rg Is Nothing Then
Application.CommandBars(1).Controls(5).Controls(1).Enabled = False
rg.NumberFormat = "dd/mm/yy"
Else
Application.CommandBars(1).Controls(5).Controls(1).Enabled = True
End If
End If
Set Rg = Nothing
End Sub
'-------------------------------
Salutations!
"Hua Seng" <senghua@club-internet.fr> a écrit dans le message de
news:OipEFwbYEHA.732@TK2MSFTNGP10.phx.gbl...
Bjrs tous le monde.
Je viens vers vous pr 1 question. Comment interdire par vba sur plusieurs
feuilles ( 5 par exemple, sur la même colonne, en occurence B:B ), le
format
de date style jj.mm.aa ou jj.mm.aaaa.
J'ai fait par l' enregistreur de macro sous excel pro et j'obtiens le code
suivant :
Sub Interdiction()
Range("B2:B26").Select
With Selection.Validation
.Delete
.Add Type:=xlValidateDate, AlertStyle:=xlValidAlertStop,
Operator: > _
xlBetween, Formula1:="1/1/1900", Formula2:="12/31/3000"
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = ""
.ErrorTitle = ""
.InputMessage = ""
.ErrorMessage = ""
.ShowInput = True
.ShowError = True
End With
End Sub
De là, j'ai essayé de déclarer qu'il y a 5 feuilles ds mon classeur et que
les utilisateurs peuvent utiliser seulement >sur la colonne B:B que le
l'enregistreur de macro mais j'arrive pas, qq'1 parmi vous a une idée.
D'avance, merci pr vos guides
Seng
Bonjour Hua Seng,
Copie cette procédure dans le ThisWorkbook de ton classeur :
Dans cette ligne de code, remplace les noms des feuilles par celles de ton
application.
Arr = Array("Feuil1", "Feuil2", "Feuil3", "Feuil4", "Feuil5")
Voici le format retenu pour l'affichage de tes données en Colonne B:B,
libre à toi d'en choisir un autre.
rg.NumberFormat = "dd/mm/yy"
'-------------------------------
Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target
As Range)
Dim Arr(), Rg As Range
Arr = Array("Feuil1", "Feuil2", "Feuil3")
If Not IsError(Application.Match(Sh.Name, Arr, 0)) Then
Set rg = Intersect(Target, Range("B:B"))
If Not rg Is Nothing Then
Application.CommandBars(1).Controls(5).Controls(1).Enabled = False
rg.NumberFormat = "dd/mm/yy"
Else
Application.CommandBars(1).Controls(5).Controls(1).Enabled = True
End If
End If
Set Rg = Nothing
End Sub
'-------------------------------
Salutations!
"Hua Seng" a écrit dans le message de
news:
Bjrs tous le monde.
Je viens vers vous pr 1 question. Comment interdire par vba sur plusieurs
feuilles ( 5 par exemple, sur la même colonne, en occurence B:B ), le
format
de date style jj.mm.aa ou jj.mm.aaaa.
J'ai fait par l' enregistreur de macro sous excel pro et j'obtiens le code
suivant :
Sub Interdiction()
Range("B2:B26").Select
With Selection.Validation
.Delete
.Add Type:=xlValidateDate, AlertStyle:=xlValidAlertStop,
Operator: > _
xlBetween, Formula1:="1/1/1900", Formula2:="12/31/3000"
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = ""
.ErrorTitle = ""
.InputMessage = ""
.ErrorMessage = ""
.ShowInput = True
.ShowError = True
End With
End Sub
De là, j'ai essayé de déclarer qu'il y a 5 feuilles ds mon classeur et que
les utilisateurs peuvent utiliser seulement >sur la colonne B:B que le
l'enregistreur de macro mais j'arrive pas, qq'1 parmi vous a une idée.
D'avance, merci pr vos guides
Seng
Bonjour Hua Seng,
Copie cette procédure dans le ThisWorkbook de ton classeur :
Dans cette ligne de code, remplace les noms des feuilles par celles de ton
application.
Arr = Array("Feuil1", "Feuil2", "Feuil3", "Feuil4", "Feuil5")
Voici le format retenu pour l'affichage de tes données en Colonne B:B,
libre à toi d'en choisir un autre.
rg.NumberFormat = "dd/mm/yy"
'-------------------------------
Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target
As Range)
Dim Arr(), Rg As Range
Arr = Array("Feuil1", "Feuil2", "Feuil3")
If Not IsError(Application.Match(Sh.Name, Arr, 0)) Then
Set rg = Intersect(Target, Range("B:B"))
If Not rg Is Nothing Then
Application.CommandBars(1).Controls(5).Controls(1).Enabled = False
rg.NumberFormat = "dd/mm/yy"
Else
Application.CommandBars(1).Controls(5).Controls(1).Enabled = True
End If
End If
Set Rg = Nothing
End Sub
'-------------------------------
Salutations!
"Hua Seng" a écrit dans le message de
news:
Bjrs tous le monde.
Je viens vers vous pr 1 question. Comment interdire par vba sur plusieurs
feuilles ( 5 par exemple, sur la même colonne, en occurence B:B ), le
format
de date style jj.mm.aa ou jj.mm.aaaa.
J'ai fait par l' enregistreur de macro sous excel pro et j'obtiens le code
suivant :
Sub Interdiction()
Range("B2:B26").Select
With Selection.Validation
.Delete
.Add Type:=xlValidateDate, AlertStyle:=xlValidAlertStop,
Operator: > _
xlBetween, Formula1:="1/1/1900", Formula2:="12/31/3000"
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = ""
.ErrorTitle = ""
.InputMessage = ""
.ErrorMessage = ""
.ShowInput = True
.ShowError = True
End With
End Sub
De là, j'ai essayé de déclarer qu'il y a 5 feuilles ds mon classeur et que
les utilisateurs peuvent utiliser seulement >sur la colonne B:B que le
l'enregistreur de macro mais j'arrive pas, qq'1 parmi vous a une idée.
D'avance, merci pr vos guides
Seng
Bonjour Hua Seng,
Copie cette procédure dans le ThisWorkbook de ton classeur :
Dans cette ligne de code, remplace les noms des feuilles par celles de ton
application.
Arr = Array("Feuil1", "Feuil2", "Feuil3", "Feuil4", "Feuil5")
Voici le format retenu pour l'affichage de tes données en Colonne B:B,
libre à toi d'en choisir un autre.
rg.NumberFormat = "dd/mm/yy"
'-------------------------------
Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target
As Range)
Dim Arr(), Rg As Range
Arr = Array("Feuil1", "Feuil2", "Feuil3")
If Not IsError(Application.Match(Sh.Name, Arr, 0)) Then
Set rg = Intersect(Target, Range("B:B"))
If Not rg Is Nothing Then
Application.CommandBars(1).Controls(5).Controls(1).Enabled = False
rg.NumberFormat = "dd/mm/yy"
Else
Application.CommandBars(1).Controls(5).Controls(1).Enabled = True
End If
End If
Set Rg = Nothing
End Sub
'-------------------------------
Salutations!
"Hua Seng" <senghua@club-internet.fr> a écrit dans le message de
news:OipEFwbYEHA.732@TK2MSFTNGP10.phx.gbl...
Bjrs tous le monde.
Je viens vers vous pr 1 question. Comment interdire par vba sur plusieurs
feuilles ( 5 par exemple, sur la même colonne, en occurence B:B ), le
format
de date style jj.mm.aa ou jj.mm.aaaa.
J'ai fait par l' enregistreur de macro sous excel pro et j'obtiens le code
suivant :
Sub Interdiction()
Range("B2:B26").Select
With Selection.Validation
.Delete
.Add Type:=xlValidateDate, AlertStyle:=xlValidAlertStop,
Operator: > _
xlBetween, Formula1:="1/1/1900", Formula2:="12/31/3000"
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = ""
.ErrorTitle = ""
.InputMessage = ""
.ErrorMessage = ""
.ShowInput = True
.ShowError = True
End With
End Sub
De là, j'ai essayé de déclarer qu'il y a 5 feuilles ds mon classeur et que
les utilisateurs peuvent utiliser seulement >sur la colonne B:B que le
l'enregistreur de macro mais j'arrive pas, qq'1 parmi vous a une idée.
D'avance, merci pr vos guides
Seng
Bonjour Hua Seng,
Copie cette procédure dans le ThisWorkbook de ton classeur :
Dans cette ligne de code, remplace les noms des feuilles par celles de ton
application.
Arr = Array("Feuil1", "Feuil2", "Feuil3", "Feuil4", "Feuil5")
Voici le format retenu pour l'affichage de tes données en Colonne B:B,
libre à toi d'en choisir un autre.
rg.NumberFormat = "dd/mm/yy"
'-------------------------------
Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target
As Range)
Dim Arr(), Rg As Range
Arr = Array("Feuil1", "Feuil2", "Feuil3")
If Not IsError(Application.Match(Sh.Name, Arr, 0)) Then
Set rg = Intersect(Target, Range("B:B"))
If Not rg Is Nothing Then
Application.CommandBars(1).Controls(5).Controls(1).Enabled = False
rg.NumberFormat = "dd/mm/yy"
Else
Application.CommandBars(1).Controls(5).Controls(1).Enabled = True
End If
End If
Set Rg = Nothing
End Sub
'-------------------------------
Salutations!
"Hua Seng" a écrit dans le message de
news:
Bjrs tous le monde.
Je viens vers vous pr 1 question. Comment interdire par vba sur plusieurs
feuilles ( 5 par exemple, sur la même colonne, en occurence B:B ), le
format
de date style jj.mm.aa ou jj.mm.aaaa.
J'ai fait par l' enregistreur de macro sous excel pro et j'obtiens le code
suivant :
Sub Interdiction()
Range("B2:B26").Select
With Selection.Validation
.Delete
.Add Type:=xlValidateDate, AlertStyle:=xlValidAlertStop,
Operator: > _
xlBetween, Formula1:="1/1/1900", Formula2:="12/31/3000"
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = ""
.ErrorTitle = ""
.InputMessage = ""
.ErrorMessage = ""
.ShowInput = True
.ShowError = True
End With
End Sub
De là, j'ai essayé de déclarer qu'il y a 5 feuilles ds mon classeur et que
les utilisateurs peuvent utiliser seulement >sur la colonne B:B que le
l'enregistreur de macro mais j'arrive pas, qq'1 parmi vous a une idée.
D'avance, merci pr vos guides
Seng
Bonsoir à tous,
Je reviens vers vous concernant mon post ci-dessous. j'ai essayé le code
que
m'a donné Denis ou Mich ( excuse- moi je ne sais pas lequel est vraiement
son prénom ) çà n'a pas fonctionné du tous. Est ce qq'1 peut m' aider +.
Merci d'avance.
seng
"michdenis" a écrit dans le message de
news:Bonjour Hua Seng,
Copie cette procédure dans le ThisWorkbook de ton classeur :
Dans cette ligne de code, remplace les noms des feuilles par celles de
ton
application.Arr = Array("Feuil1", "Feuil2", "Feuil3", "Feuil4", "Feuil5")
Voici le format retenu pour l'affichage de tes données en Colonne B:B,
libre à toi d'en choisir un autre.rg.NumberFormat = "dd/mm/yy"
'-------------------------------
Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal
Target
As Range)
Dim Arr(), Rg As Range
Arr = Array("Feuil1", "Feuil2", "Feuil3")
If Not IsError(Application.Match(Sh.Name, Arr, 0)) Then
Set rg = Intersect(Target, Range("B:B"))
If Not rg Is Nothing Then
Application.CommandBars(1).Controls(5).Controls(1).Enabled False
rg.NumberFormat = "dd/mm/yy"
Else
Application.CommandBars(1).Controls(5).Controls(1).Enabled True
End If
End If
Set Rg = Nothing
End Sub
'-------------------------------
Salutations!
"Hua Seng" a écrit dans le message de
news:Bjrs tous le monde.
Je viens vers vous pr 1 question. Comment interdire par vba sur
plusieurs
feuilles ( 5 par exemple, sur la même colonne, en occurence B:B ), le
formatde date style jj.mm.aa ou jj.mm.aaaa.
J'ai fait par l' enregistreur de macro sous excel pro et j'obtiens le
code
suivant :
Sub Interdiction()
Range("B2:B26").Select
With Selection.Validation
.Delete
.Add Type:=xlValidateDate, AlertStyle:=xlValidAlertStop,
Operator: > > _xlBetween, Formula1:="1/1/1900", Formula2:="12/31/3000"
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = ""
.ErrorTitle = ""
.InputMessage = ""
.ErrorMessage = ""
.ShowInput = True
.ShowError = True
End With
End Sub
De là, j'ai essayé de déclarer qu'il y a 5 feuilles ds mon classeur et
que
les utilisateurs peuvent utiliser seulement >sur la colonne B:B que le
format de date jj/mm/aa ou jj/mm/aaaa, tjrs parl'enregistreur de macro mais j'arrive pas, qq'1 parmi vous a une idée.
D'avance, merci pr vos guides
Seng
Bonsoir à tous,
Je reviens vers vous concernant mon post ci-dessous. j'ai essayé le code
que
m'a donné Denis ou Mich ( excuse- moi je ne sais pas lequel est vraiement
son prénom ) çà n'a pas fonctionné du tous. Est ce qq'1 peut m' aider +.
Merci d'avance.
seng
"michdenis" <michdenis@hotmail.com> a écrit dans le message de
news:e188cvcYEHA.2868@TK2MSFTNGP09.phx.gbl...
Bonjour Hua Seng,
Copie cette procédure dans le ThisWorkbook de ton classeur :
Dans cette ligne de code, remplace les noms des feuilles par celles de
ton
application.
Arr = Array("Feuil1", "Feuil2", "Feuil3", "Feuil4", "Feuil5")
Voici le format retenu pour l'affichage de tes données en Colonne B:B,
libre à toi d'en choisir un autre.
rg.NumberFormat = "dd/mm/yy"
'-------------------------------
Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal
Target
As Range)
Dim Arr(), Rg As Range
Arr = Array("Feuil1", "Feuil2", "Feuil3")
If Not IsError(Application.Match(Sh.Name, Arr, 0)) Then
Set rg = Intersect(Target, Range("B:B"))
If Not rg Is Nothing Then
Application.CommandBars(1).Controls(5).Controls(1).Enabled False
rg.NumberFormat = "dd/mm/yy"
Else
Application.CommandBars(1).Controls(5).Controls(1).Enabled True
End If
End If
Set Rg = Nothing
End Sub
'-------------------------------
Salutations!
"Hua Seng" <senghua@club-internet.fr> a écrit dans le message de
news:OipEFwbYEHA.732@TK2MSFTNGP10.phx.gbl...
Bjrs tous le monde.
Je viens vers vous pr 1 question. Comment interdire par vba sur
plusieurs
feuilles ( 5 par exemple, sur la même colonne, en occurence B:B ), le
format
de date style jj.mm.aa ou jj.mm.aaaa.
J'ai fait par l' enregistreur de macro sous excel pro et j'obtiens le
code
suivant :
Sub Interdiction()
Range("B2:B26").Select
With Selection.Validation
.Delete
.Add Type:=xlValidateDate, AlertStyle:=xlValidAlertStop,
Operator: > > _
xlBetween, Formula1:="1/1/1900", Formula2:="12/31/3000"
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = ""
.ErrorTitle = ""
.InputMessage = ""
.ErrorMessage = ""
.ShowInput = True
.ShowError = True
End With
End Sub
De là, j'ai essayé de déclarer qu'il y a 5 feuilles ds mon classeur et
que
les utilisateurs peuvent utiliser seulement >sur la colonne B:B que le
format de date jj/mm/aa ou jj/mm/aaaa, tjrs par
l'enregistreur de macro mais j'arrive pas, qq'1 parmi vous a une idée.
D'avance, merci pr vos guides
Seng
Bonsoir à tous,
Je reviens vers vous concernant mon post ci-dessous. j'ai essayé le code
que
m'a donné Denis ou Mich ( excuse- moi je ne sais pas lequel est vraiement
son prénom ) çà n'a pas fonctionné du tous. Est ce qq'1 peut m' aider +.
Merci d'avance.
seng
"michdenis" a écrit dans le message de
news:Bonjour Hua Seng,
Copie cette procédure dans le ThisWorkbook de ton classeur :
Dans cette ligne de code, remplace les noms des feuilles par celles de
ton
application.Arr = Array("Feuil1", "Feuil2", "Feuil3", "Feuil4", "Feuil5")
Voici le format retenu pour l'affichage de tes données en Colonne B:B,
libre à toi d'en choisir un autre.rg.NumberFormat = "dd/mm/yy"
'-------------------------------
Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal
Target
As Range)
Dim Arr(), Rg As Range
Arr = Array("Feuil1", "Feuil2", "Feuil3")
If Not IsError(Application.Match(Sh.Name, Arr, 0)) Then
Set rg = Intersect(Target, Range("B:B"))
If Not rg Is Nothing Then
Application.CommandBars(1).Controls(5).Controls(1).Enabled False
rg.NumberFormat = "dd/mm/yy"
Else
Application.CommandBars(1).Controls(5).Controls(1).Enabled True
End If
End If
Set Rg = Nothing
End Sub
'-------------------------------
Salutations!
"Hua Seng" a écrit dans le message de
news:Bjrs tous le monde.
Je viens vers vous pr 1 question. Comment interdire par vba sur
plusieurs
feuilles ( 5 par exemple, sur la même colonne, en occurence B:B ), le
formatde date style jj.mm.aa ou jj.mm.aaaa.
J'ai fait par l' enregistreur de macro sous excel pro et j'obtiens le
code
suivant :
Sub Interdiction()
Range("B2:B26").Select
With Selection.Validation
.Delete
.Add Type:=xlValidateDate, AlertStyle:=xlValidAlertStop,
Operator: > > _xlBetween, Formula1:="1/1/1900", Formula2:="12/31/3000"
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = ""
.ErrorTitle = ""
.InputMessage = ""
.ErrorMessage = ""
.ShowInput = True
.ShowError = True
End With
End Sub
De là, j'ai essayé de déclarer qu'il y a 5 feuilles ds mon classeur et
que
les utilisateurs peuvent utiliser seulement >sur la colonne B:B que le
format de date jj/mm/aa ou jj/mm/aaaa, tjrs parl'enregistreur de macro mais j'arrive pas, qq'1 parmi vous a une idée.
D'avance, merci pr vos guides
Seng
Bonsoir,
Excusez moi, je me suis mal exprimé, et peut être aussi dans mon post. En
fait, je veux bloquer la colonne B, aux utilisateurs, pour qu'ils utilisent
seulement les formats jj/mm/aa et/ou jj/mm/aaaa ( 01/01/2004 ou 31/01/04 ),
s'ils écrivent 01.01.2004 ou 01.01.04, un avertissement visuel dit
"ATTENTION FORMAT NON AUTORISE".
Le macro que j'ai fait correspond aux commandes d' excel : Donnés =>
Validation, Option, Critére de validation, date, Données comprise 01/01/1999
et 31/12/3000"
Encore 1 fois, merci et excusez moi.
seng
"Hua Seng" a écrit dans le message de
news:Bonsoir à tous,
Je reviens vers vous concernant mon post ci-dessous. j'ai essayé le code
quem'a donné Denis ou Mich ( excuse- moi je ne sais pas lequel est vraiement
son prénom ) çà n'a pas fonctionné du tous. Est ce qq'1 peut m' aider +.
Merci d'avance.
seng
"michdenis" a écrit dans le message de
news:Bonjour Hua Seng,
Copie cette procédure dans le ThisWorkbook de ton classeur :
Dans cette ligne de code, remplace les noms des feuilles par celles de
tonapplication.Arr = Array("Feuil1", "Feuil2", "Feuil3", "Feuil4", "Feuil5")
Voici le format retenu pour l'affichage de tes données en Colonne B:B,
libre à toi d'en choisir un autre.rg.NumberFormat = "dd/mm/yy"
'-------------------------------
Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal
TargetAs Range)Dim Arr(), Rg As Range
Arr = Array("Feuil1", "Feuil2", "Feuil3")
If Not IsError(Application.Match(Sh.Name, Arr, 0)) Then
Set rg = Intersect(Target, Range("B:B"))
If Not rg Is Nothing Then
Application.CommandBars(1).Controls(5).Controls(1).Enabled >
Falserg.NumberFormat = "dd/mm/yy"
Else
Application.CommandBars(1).Controls(5).Controls(1).Enabled >
TrueEnd If
End If
Set Rg = Nothing
End Sub
'-------------------------------
Salutations!
"Hua Seng" a écrit dans le message de
news:Bjrs tous le monde.
Je viens vers vous pr 1 question. Comment interdire par vba sur
plusieursfeuilles ( 5 par exemple, sur la même colonne, en occurence B:B ), le
formatde date style jj.mm.aa ou jj.mm.aaaa.
J'ai fait par l' enregistreur de macro sous excel pro et j'obtiens le
codesuivant :
Sub Interdiction()
Range("B2:B26").Select
With Selection.Validation
.Delete
.Add Type:=xlValidateDate, AlertStyle:=xlValidAlertStop,
Operator: >>_
xlBetween, Formula1:="1/1/1900", Formula2:="12/31/3000"
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = ""
.ErrorTitle = ""
.InputMessage = ""
.ErrorMessage = ""
.ShowInput = True
.ShowError = True
End With
End Sub
De là, j'ai essayé de déclarer qu'il y a 5 feuilles ds mon classeur et
queles utilisateurs peuvent utiliser seulement >sur la colonne B:B que le
format de date jj/mm/aa ou jj/mm/aaaa, tjrs parl'enregistreur de macro mais j'arrive pas, qq'1 parmi vous a une idée.
D'avance, merci pr vos guides
Seng
Bonsoir,
Excusez moi, je me suis mal exprimé, et peut être aussi dans mon post. En
fait, je veux bloquer la colonne B, aux utilisateurs, pour qu'ils utilisent
seulement les formats jj/mm/aa et/ou jj/mm/aaaa ( 01/01/2004 ou 31/01/04 ),
s'ils écrivent 01.01.2004 ou 01.01.04, un avertissement visuel dit
"ATTENTION FORMAT NON AUTORISE".
Le macro que j'ai fait correspond aux commandes d' excel : Donnés =>
Validation, Option, Critére de validation, date, Données comprise 01/01/1999
et 31/12/3000"
Encore 1 fois, merci et excusez moi.
seng
"Hua Seng" <senghua@club-internet.fr> a écrit dans le message de
news:elQuu24YEHA.2408@tk2msftngp13.phx.gbl...
Bonsoir à tous,
Je reviens vers vous concernant mon post ci-dessous. j'ai essayé le code
que
m'a donné Denis ou Mich ( excuse- moi je ne sais pas lequel est vraiement
son prénom ) çà n'a pas fonctionné du tous. Est ce qq'1 peut m' aider +.
Merci d'avance.
seng
"michdenis" <michdenis@hotmail.com> a écrit dans le message de
news:e188cvcYEHA.2868@TK2MSFTNGP09.phx.gbl...
Bonjour Hua Seng,
Copie cette procédure dans le ThisWorkbook de ton classeur :
Dans cette ligne de code, remplace les noms des feuilles par celles de
ton
application.
Arr = Array("Feuil1", "Feuil2", "Feuil3", "Feuil4", "Feuil5")
Voici le format retenu pour l'affichage de tes données en Colonne B:B,
libre à toi d'en choisir un autre.
rg.NumberFormat = "dd/mm/yy"
'-------------------------------
Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal
Target
As Range)
Dim Arr(), Rg As Range
Arr = Array("Feuil1", "Feuil2", "Feuil3")
If Not IsError(Application.Match(Sh.Name, Arr, 0)) Then
Set rg = Intersect(Target, Range("B:B"))
If Not rg Is Nothing Then
Application.CommandBars(1).Controls(5).Controls(1).Enabled >
False
rg.NumberFormat = "dd/mm/yy"
Else
Application.CommandBars(1).Controls(5).Controls(1).Enabled >
True
End If
End If
Set Rg = Nothing
End Sub
'-------------------------------
Salutations!
"Hua Seng" <senghua@club-internet.fr> a écrit dans le message de
news:OipEFwbYEHA.732@TK2MSFTNGP10.phx.gbl...
Bjrs tous le monde.
Je viens vers vous pr 1 question. Comment interdire par vba sur
plusieurs
feuilles ( 5 par exemple, sur la même colonne, en occurence B:B ), le
format
de date style jj.mm.aa ou jj.mm.aaaa.
J'ai fait par l' enregistreur de macro sous excel pro et j'obtiens le
code
suivant :
Sub Interdiction()
Range("B2:B26").Select
With Selection.Validation
.Delete
.Add Type:=xlValidateDate, AlertStyle:=xlValidAlertStop,
Operator: >>
_
xlBetween, Formula1:="1/1/1900", Formula2:="12/31/3000"
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = ""
.ErrorTitle = ""
.InputMessage = ""
.ErrorMessage = ""
.ShowInput = True
.ShowError = True
End With
End Sub
De là, j'ai essayé de déclarer qu'il y a 5 feuilles ds mon classeur et
que
les utilisateurs peuvent utiliser seulement >sur la colonne B:B que le
format de date jj/mm/aa ou jj/mm/aaaa, tjrs par
l'enregistreur de macro mais j'arrive pas, qq'1 parmi vous a une idée.
D'avance, merci pr vos guides
Seng
Bonsoir,
Excusez moi, je me suis mal exprimé, et peut être aussi dans mon post. En
fait, je veux bloquer la colonne B, aux utilisateurs, pour qu'ils utilisent
seulement les formats jj/mm/aa et/ou jj/mm/aaaa ( 01/01/2004 ou 31/01/04 ),
s'ils écrivent 01.01.2004 ou 01.01.04, un avertissement visuel dit
"ATTENTION FORMAT NON AUTORISE".
Le macro que j'ai fait correspond aux commandes d' excel : Donnés =>
Validation, Option, Critére de validation, date, Données comprise 01/01/1999
et 31/12/3000"
Encore 1 fois, merci et excusez moi.
seng
"Hua Seng" a écrit dans le message de
news:Bonsoir à tous,
Je reviens vers vous concernant mon post ci-dessous. j'ai essayé le code
quem'a donné Denis ou Mich ( excuse- moi je ne sais pas lequel est vraiement
son prénom ) çà n'a pas fonctionné du tous. Est ce qq'1 peut m' aider +.
Merci d'avance.
seng
"michdenis" a écrit dans le message de
news:Bonjour Hua Seng,
Copie cette procédure dans le ThisWorkbook de ton classeur :
Dans cette ligne de code, remplace les noms des feuilles par celles de
tonapplication.Arr = Array("Feuil1", "Feuil2", "Feuil3", "Feuil4", "Feuil5")
Voici le format retenu pour l'affichage de tes données en Colonne B:B,
libre à toi d'en choisir un autre.rg.NumberFormat = "dd/mm/yy"
'-------------------------------
Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal
TargetAs Range)Dim Arr(), Rg As Range
Arr = Array("Feuil1", "Feuil2", "Feuil3")
If Not IsError(Application.Match(Sh.Name, Arr, 0)) Then
Set rg = Intersect(Target, Range("B:B"))
If Not rg Is Nothing Then
Application.CommandBars(1).Controls(5).Controls(1).Enabled >
Falserg.NumberFormat = "dd/mm/yy"
Else
Application.CommandBars(1).Controls(5).Controls(1).Enabled >
TrueEnd If
End If
Set Rg = Nothing
End Sub
'-------------------------------
Salutations!
"Hua Seng" a écrit dans le message de
news:Bjrs tous le monde.
Je viens vers vous pr 1 question. Comment interdire par vba sur
plusieursfeuilles ( 5 par exemple, sur la même colonne, en occurence B:B ), le
formatde date style jj.mm.aa ou jj.mm.aaaa.
J'ai fait par l' enregistreur de macro sous excel pro et j'obtiens le
codesuivant :
Sub Interdiction()
Range("B2:B26").Select
With Selection.Validation
.Delete
.Add Type:=xlValidateDate, AlertStyle:=xlValidAlertStop,
Operator: >>_
xlBetween, Formula1:="1/1/1900", Formula2:="12/31/3000"
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = ""
.ErrorTitle = ""
.InputMessage = ""
.ErrorMessage = ""
.ShowInput = True
.ShowError = True
End With
End Sub
De là, j'ai essayé de déclarer qu'il y a 5 feuilles ds mon classeur et
queles utilisateurs peuvent utiliser seulement >sur la colonne B:B que le
format de date jj/mm/aa ou jj/mm/aaaa, tjrs parl'enregistreur de macro mais j'arrive pas, qq'1 parmi vous a une idée.
D'avance, merci pr vos guides
Seng