"Lucho" <arnera@club-internet.fr> a écrit dans le message de news:
3f5227ce$0$20950$7a628cd7@news.club-internet.fr...
> absolument genial ton truc, ou a tu appris le VBA ? je vais commander un
> bouquin pour m'y mettre, effectivement ca devient indispensable.
J'ai apris le VBA sur ce groupe et en consultant les différants sites dédiés
comme
http://www.excelabo.net/xl/debuter.htm
pas besoin de bouquin, utiliser le plus possible l'enregistreur de macro,
essayé de comprendre les macros et les adapter, consulter les sites, faire
des recherche (comme Google) poser des quetions quand on est bloqué.
Bref pour apprendre il faut se casser la tête dessus et ça rentre.
> pour continuer comme tu a l'air vraiment tres bon,
Pas du tout je n'ai découvert VBA en Mars 2003
est il possible de faire
> reference a la valeur d'une cellule dans une macro,
Voici ce que ça donne avec une valeur en D1
Sub zz_TirXX()
Dim DerCel As Long
Application.ScreenUpdating = False
DerCel = Range("a65536").End(xlUp).Row
If DerCel < 2 Then Exit Sub
Range("B1:B" & Range("b65536").End(xlUp).Row).Select
Selection.Delete Shift:=xlShiftUp
Range("B1:B" & DerCel) = "=rand()"
Range("A1:B" & DerCel).Sort Key1:=[B1], Order1:=xlAscending
Range("B1:B" & DerCel) = Range("A1:A" & DerCel).Value
Range("A1:A" & DerCel).Sort Key1:=[A1], Order1:=xlAscending
If Int(DerCel / 2) <> DerCel / 2 Then
Range("B" & DerCel + 1) = Range("B" & DerCel)
Range("B" & DerCel) = "Qualifié"
Range("B" & DerCel).Select
With Selection
.HorizontalAlignment = xlCenter
.VerticalAlignment = xlBottom
.WrapText = False
.Orientation = 0
.AddIndent = False
.ShrinkToFit = False
.MergeCells = False
End With
Selection.Font.Bold = True
Selection.Font.Italic = True
Selection.Font.Underline = xlUnderlineStyleSingle
Selection.Font.ColorIndex = 3
Range("B" & DerCel + 1).Select
Selection.Font.ColorIndex = 3
End If
Nombre = Range("D1")
If Nombre <> "" And IsNumeric(Nombre) = True And Nombre < DerCel Then
Range("B" & Nombre + 1 & ":B" & Range("b65536").End(xlUp).Row).Select
Selection.Delete Shift:=xlShiftUp
DerCel = Range("b65536").End(xlUp).Row
If Int(DerCel / 2) <> DerCel / 2 Then
Range("B" & DerCel + 1) = Range("B" & DerCel)
Range("B" & DerCel) = "Qualifié"
Range("B" & DerCel).Select
With Selection
.HorizontalAlignment = xlCenter
.VerticalAlignment = xlBottom
.WrapText = False
.Orientation = 0
.AddIndent = False
.ShrinkToFit = False
.MergeCells = False
End With
Selection.Font.Bold = True
Selection.Font.Italic = True
Selection.Font.Underline = xlUnderlineStyleSingle
Selection.Font.ColorIndex = 3
Range("B" & DerCel + 1).Select
Selection.Font.ColorIndex = 3
End If
End If
Application.ScreenUpdating = True
Range("B1").Select
End Sub
@+
Thierry
et faire un tirage au
> sort aleatoire comme tu vient de le faire dans ton code precedent d'autant
> de nombre que la valeur de la cellule...ex D1 contient le chiffre 8, donc
la
> macro me sort 8 chiffre selectionne dans la liste.
>
> je sait je suis compliqué je ne pense pas aller jusque la mais je profite
de
> ton savoir pour faire evoluer le truc au maximum.
>
> encore merci A+
>
> Lucho
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Lucho
eh bien encore merci, je vais garder ton adresse si ca ne t'ennuis pas, peut etre qu'en cas de bloquage VBA tu pourrai m'aider.
le dernier que tu viens de m'envoyer marche tres bien, je vais refaire mon classeur completement en radaptant tes code si j'y arrive, pour voir si il ne me manque rien en simulant un concours complet, je te tien au courant ces prochain jours.
merci surement a tres bientot
A+
Luc "papyty" a écrit dans le message de news: uvVre8$
Salut Lucho
"Lucho" a écrit dans le message de news: 3f5227ce$0$20950$
absolument genial ton truc, ou a tu appris le VBA ? je vais commander un bouquin pour m'y mettre, effectivement ca devient indispensable.
J'ai apris le VBA sur ce groupe et en consultant les différants sites dédiés
comme http://www.excelabo.net/xl/debuter.htm pas besoin de bouquin, utiliser le plus possible l'enregistreur de macro, essayé de comprendre les macros et les adapter, consulter les sites, faire des recherche (comme Google) poser des quetions quand on est bloqué. Bref pour apprendre il faut se casser la tête dessus et ça rentre.
pour continuer comme tu a l'air vraiment tres bon, Pas du tout je n'ai découvert VBA en Mars 2003
est il possible de faire
reference a la valeur d'une cellule dans une macro,
Voici ce que ça donne avec une valeur en D1
Sub zz_TirXX() Dim DerCel As Long Application.ScreenUpdating = False DerCel = Range("a65536").End(xlUp).Row If DerCel < 2 Then Exit Sub Range("B1:B" & Range("b65536").End(xlUp).Row).Select Selection.Delete Shift:=xlShiftUp Range("B1:B" & DerCel) = "=rand()" Range("A1:B" & DerCel).Sort Key1:=[B1], Order1:=xlAscending Range("B1:B" & DerCel) = Range("A1:A" & DerCel).Value Range("A1:A" & DerCel).Sort Key1:=[A1], Order1:=xlAscending If Int(DerCel / 2) <> DerCel / 2 Then Range("B" & DerCel + 1) = Range("B" & DerCel) Range("B" & DerCel) = "Qualifié" Range("B" & DerCel).Select With Selection .HorizontalAlignment = xlCenter .VerticalAlignment = xlBottom .WrapText = False .Orientation = 0 .AddIndent = False .ShrinkToFit = False .MergeCells = False End With Selection.Font.Bold = True Selection.Font.Italic = True Selection.Font.Underline = xlUnderlineStyleSingle Selection.Font.ColorIndex = 3 Range("B" & DerCel + 1).Select Selection.Font.ColorIndex = 3 End If Nombre = Range("D1") If Nombre <> "" And IsNumeric(Nombre) = True And Nombre < DerCel Then Range("B" & Nombre + 1 & ":B" & Range("b65536").End(xlUp).Row).Select Selection.Delete Shift:=xlShiftUp DerCel = Range("b65536").End(xlUp).Row If Int(DerCel / 2) <> DerCel / 2 Then Range("B" & DerCel + 1) = Range("B" & DerCel) Range("B" & DerCel) = "Qualifié" Range("B" & DerCel).Select With Selection .HorizontalAlignment = xlCenter .VerticalAlignment = xlBottom .WrapText = False .Orientation = 0 .AddIndent = False .ShrinkToFit = False .MergeCells = False End With Selection.Font.Bold = True Selection.Font.Italic = True Selection.Font.Underline = xlUnderlineStyleSingle Selection.Font.ColorIndex = 3 Range("B" & DerCel + 1).Select Selection.Font.ColorIndex = 3 End If End If Application.ScreenUpdating = True Range("B1").Select End Sub
@+ Thierry
et faire un tirage au
sort aleatoire comme tu vient de le faire dans ton code precedent d'autant
de nombre que la valeur de la cellule...ex D1 contient le chiffre 8, donc
la
macro me sort 8 chiffre selectionne dans la liste.
je sait je suis compliqué je ne pense pas aller jusque la mais je profite
de
ton savoir pour faire evoluer le truc au maximum.
encore merci A+
Lucho
eh bien encore merci, je vais garder ton adresse si ca ne t'ennuis pas, peut
etre qu'en cas de bloquage VBA tu pourrai m'aider.
le dernier que tu viens de m'envoyer marche tres bien, je vais refaire mon
classeur completement en radaptant tes code si j'y arrive, pour voir si il
ne me manque rien en simulant un concours complet, je te tien au courant ces
prochain jours.
merci surement a tres bientot
A+
Luc
"papyty" <papyty@yahoo.fr> a écrit dans le message de news:
uvVre8$bDHA.3872@TK2MSFTNGP11.phx.gbl...
Salut Lucho
"Lucho" <arnera@club-internet.fr> a écrit dans le message de news:
3f5227ce$0$20950$7a628cd7@news.club-internet.fr...
absolument genial ton truc, ou a tu appris le VBA ? je vais commander un
bouquin pour m'y mettre, effectivement ca devient indispensable.
J'ai apris le VBA sur ce groupe et en consultant les différants sites
dédiés
comme
http://www.excelabo.net/xl/debuter.htm
pas besoin de bouquin, utiliser le plus possible l'enregistreur de macro,
essayé de comprendre les macros et les adapter, consulter les sites, faire
des recherche (comme Google) poser des quetions quand on est bloqué.
Bref pour apprendre il faut se casser la tête dessus et ça rentre.
pour continuer comme tu a l'air vraiment tres bon,
Pas du tout je n'ai découvert VBA en Mars 2003
est il possible de faire
reference a la valeur d'une cellule dans une macro,
Voici ce que ça donne avec une valeur en D1
Sub zz_TirXX()
Dim DerCel As Long
Application.ScreenUpdating = False
DerCel = Range("a65536").End(xlUp).Row
If DerCel < 2 Then Exit Sub
Range("B1:B" & Range("b65536").End(xlUp).Row).Select
Selection.Delete Shift:=xlShiftUp
Range("B1:B" & DerCel) = "=rand()"
Range("A1:B" & DerCel).Sort Key1:=[B1], Order1:=xlAscending
Range("B1:B" & DerCel) = Range("A1:A" & DerCel).Value
Range("A1:A" & DerCel).Sort Key1:=[A1], Order1:=xlAscending
If Int(DerCel / 2) <> DerCel / 2 Then
Range("B" & DerCel + 1) = Range("B" & DerCel)
Range("B" & DerCel) = "Qualifié"
Range("B" & DerCel).Select
With Selection
.HorizontalAlignment = xlCenter
.VerticalAlignment = xlBottom
.WrapText = False
.Orientation = 0
.AddIndent = False
.ShrinkToFit = False
.MergeCells = False
End With
Selection.Font.Bold = True
Selection.Font.Italic = True
Selection.Font.Underline = xlUnderlineStyleSingle
Selection.Font.ColorIndex = 3
Range("B" & DerCel + 1).Select
Selection.Font.ColorIndex = 3
End If
Nombre = Range("D1")
If Nombre <> "" And IsNumeric(Nombre) = True And Nombre < DerCel Then
Range("B" & Nombre + 1 & ":B" & Range("b65536").End(xlUp).Row).Select
Selection.Delete Shift:=xlShiftUp
DerCel = Range("b65536").End(xlUp).Row
If Int(DerCel / 2) <> DerCel / 2 Then
Range("B" & DerCel + 1) = Range("B" & DerCel)
Range("B" & DerCel) = "Qualifié"
Range("B" & DerCel).Select
With Selection
.HorizontalAlignment = xlCenter
.VerticalAlignment = xlBottom
.WrapText = False
.Orientation = 0
.AddIndent = False
.ShrinkToFit = False
.MergeCells = False
End With
Selection.Font.Bold = True
Selection.Font.Italic = True
Selection.Font.Underline = xlUnderlineStyleSingle
Selection.Font.ColorIndex = 3
Range("B" & DerCel + 1).Select
Selection.Font.ColorIndex = 3
End If
End If
Application.ScreenUpdating = True
Range("B1").Select
End Sub
@+
Thierry
et faire un tirage au
sort aleatoire comme tu vient de le faire dans ton code precedent
d'autant
de nombre que la valeur de la cellule...ex D1 contient le chiffre 8,
donc
la
macro me sort 8 chiffre selectionne dans la liste.
je sait je suis compliqué je ne pense pas aller jusque la mais je
profite
eh bien encore merci, je vais garder ton adresse si ca ne t'ennuis pas, peut etre qu'en cas de bloquage VBA tu pourrai m'aider.
le dernier que tu viens de m'envoyer marche tres bien, je vais refaire mon classeur completement en radaptant tes code si j'y arrive, pour voir si il ne me manque rien en simulant un concours complet, je te tien au courant ces prochain jours.
merci surement a tres bientot
A+
Luc "papyty" a écrit dans le message de news: uvVre8$
Salut Lucho
"Lucho" a écrit dans le message de news: 3f5227ce$0$20950$
absolument genial ton truc, ou a tu appris le VBA ? je vais commander un bouquin pour m'y mettre, effectivement ca devient indispensable.
J'ai apris le VBA sur ce groupe et en consultant les différants sites dédiés
comme http://www.excelabo.net/xl/debuter.htm pas besoin de bouquin, utiliser le plus possible l'enregistreur de macro, essayé de comprendre les macros et les adapter, consulter les sites, faire des recherche (comme Google) poser des quetions quand on est bloqué. Bref pour apprendre il faut se casser la tête dessus et ça rentre.
pour continuer comme tu a l'air vraiment tres bon, Pas du tout je n'ai découvert VBA en Mars 2003
est il possible de faire
reference a la valeur d'une cellule dans une macro,
Voici ce que ça donne avec une valeur en D1
Sub zz_TirXX() Dim DerCel As Long Application.ScreenUpdating = False DerCel = Range("a65536").End(xlUp).Row If DerCel < 2 Then Exit Sub Range("B1:B" & Range("b65536").End(xlUp).Row).Select Selection.Delete Shift:=xlShiftUp Range("B1:B" & DerCel) = "=rand()" Range("A1:B" & DerCel).Sort Key1:=[B1], Order1:=xlAscending Range("B1:B" & DerCel) = Range("A1:A" & DerCel).Value Range("A1:A" & DerCel).Sort Key1:=[A1], Order1:=xlAscending If Int(DerCel / 2) <> DerCel / 2 Then Range("B" & DerCel + 1) = Range("B" & DerCel) Range("B" & DerCel) = "Qualifié" Range("B" & DerCel).Select With Selection .HorizontalAlignment = xlCenter .VerticalAlignment = xlBottom .WrapText = False .Orientation = 0 .AddIndent = False .ShrinkToFit = False .MergeCells = False End With Selection.Font.Bold = True Selection.Font.Italic = True Selection.Font.Underline = xlUnderlineStyleSingle Selection.Font.ColorIndex = 3 Range("B" & DerCel + 1).Select Selection.Font.ColorIndex = 3 End If Nombre = Range("D1") If Nombre <> "" And IsNumeric(Nombre) = True And Nombre < DerCel Then Range("B" & Nombre + 1 & ":B" & Range("b65536").End(xlUp).Row).Select Selection.Delete Shift:=xlShiftUp DerCel = Range("b65536").End(xlUp).Row If Int(DerCel / 2) <> DerCel / 2 Then Range("B" & DerCel + 1) = Range("B" & DerCel) Range("B" & DerCel) = "Qualifié" Range("B" & DerCel).Select With Selection .HorizontalAlignment = xlCenter .VerticalAlignment = xlBottom .WrapText = False .Orientation = 0 .AddIndent = False .ShrinkToFit = False .MergeCells = False End With Selection.Font.Bold = True Selection.Font.Italic = True Selection.Font.Underline = xlUnderlineStyleSingle Selection.Font.ColorIndex = 3 Range("B" & DerCel + 1).Select Selection.Font.ColorIndex = 3 End If End If Application.ScreenUpdating = True Range("B1").Select End Sub
@+ Thierry
et faire un tirage au
sort aleatoire comme tu vient de le faire dans ton code precedent d'autant
de nombre que la valeur de la cellule...ex D1 contient le chiffre 8, donc
la
macro me sort 8 chiffre selectionne dans la liste.
je sait je suis compliqué je ne pense pas aller jusque la mais je profite