Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

nb de car

36 réponses
Avatar
Jacquouille
Bonsoir

J'aimerais avoir la syntaxe en grand breton (pour vba) afin d'enlever le
dernier caractère de droite d'une cel.
Et connaître le num de chr pour le point.
Il me dit 46, mais c'est pas ça.
SVP

Voici l'idée:

Sub souligner_les_num()
For Each c In Range("a1:G363")
'c.Value = c.Value & Chr(7)

c.Value = Left(c, (Chr(c).Count - 1))

' ..... ligne précédente qui bloque


'c.Font.Underline = xlUnderlineStyleSingle
Next
End Sub

En vous remerciant
Bonne fin de soirée et surtout, bonne fête des cloches.
Jacques.


Jacquouille

" Le vin est au repas ce que le parfum est à la femme."


---
L'absence de virus dans ce courrier électronique a été vérifiée par le logiciel antivirus Avast.
http://www.avast.com

10 réponses

1 2 3 4
Avatar
Jacky
Re..
Par contre, à quoi sert ta 2° ligne: Application.ScreenUpdatingúlse


Désactive momentanément l'actualisation de l'écran, comme il y a théoriquement 363 affichages avec la boucle,
cela fera gagner quelque nanoseconde ;o))
En pratique je dirai, complètement inutile dans CE CAS.......;o)

Juste une 2° question: ne faut-il pas poser au départ N=1 ?


Non, a condition que cette macro reste en l'état.
N = N + 1
Placé avant
C.Value = N

Comme N est déclaré "integer" à chaque lancement, elle est à zéro par défaut sauf si elle est déclarée public.

Le capitaine [ ] est bien aussi. AV l'employait souvent pour [c]


AV était pendant longtemps un de mes maitres.
J'aimais bien aussi ses "remises dans le droit chemin", quelquefois très virulentes.
Dommage de ne plus le voir ici.

--
Joyeuses Pâques
Jacky
Avatar
Patrick
à la déclaration de N , il est à zéro donc il faut l'incrémmenter dès le
départ :)

Patrick


"Jacquouille" a écrit dans le message de news:
mfr7n5$4ge$
Juste une 2° question: ne faut-il pas poser au départ N=1 ?

Jacquouille

" Le vin est au repas ce que le parfum est à la femme."
"Jacky" a écrit dans le message de groupe de discussion :
mfqmbc$s26$

Bonjour en ce dimanche de Pâques

'-------------------------------------
Sub LeLapinDePaques()
Dim N As Integer, C As Range
Application.ScreenUpdating = False
For Each C In [a1:g363]
N = N + 1
C.Value = N
Next
With [a1:g363]
' .ColumnWidth = 16 'Largeur colonne
.Columns.AutoFit 'Largeur colonne selon la plus large
.RowHeight = 79.5 'Hauteur ligne
.Font.Name = "Arial" 'Police
.Font.Size = 36 'Taille police
.NumberFormat = "###0"".""" 'Met un point à la fin"
.HorizontalAlignment = xlCenter 'Centrer le contenu
.VerticalAlignment = xlCenter 'Centrer le contenu
End With
Application.ScreenUpdating = True
End Sub
'--------------------------------------
--
Salutations
JJ



---
L'absence de virus dans ce courrier électronique a été vérifiée par le
logiciel antivirus Avast.
http://www.avast.com" target="_blank" class="text-blue hover:opacity-90 " style="word-break: break-all;" rel="noopener nofollow">http://www.avast.com






---
L'absence de virus dans ce courrier electronique a ete verifiee par le logiciel antivirus Avast.
http://www.avast.com" target="_blank" class="text-blue hover:opacity-90 " style="word-break: break-all;" rel="noopener nofollow">http://www.avast.com
Avatar
GL
Le 05/04/2015 15:19, Jacky a écrit :
Re..
Par contre, à quoi sert ta 2° ligne: Application.ScreenUpdatingúlse


Désactive momentanément l'actualisation de l'écran, comme il y a théoriquement 363 affichages avec la boucle,
cela fera gagner quelque nanoseconde ;o))
En pratique je dirai, complètement inutile dans CE CAS.......;o)



Vous avez essayé ?
Parce qu'il y a 363 * 7 = 2541 affichages pour c.Value. Ca commence à
faire pas mal...



Juste une 2° question: ne faut-il pas poser au départ N=1 ?


Non, a condition que cette macro reste en l'état.
N = N + 1
Placé avant
C.Value = N

Comme N est déclaré "integer" à chaque lancement, elle est à zéro par défaut sauf si elle est déclarée public.

Le capitaine [ ] est bien aussi. AV l'employait souvent pour [c]


AV était pendant longtemps un de mes maitres.
J'aimais bien aussi ses "remises dans le droit chemin", quelquefois très virulentes.
Dommage de ne plus le voir ici.

Avatar
MichD
Bonjour,

Tu pourrais aussi écrire la procédure comme ceci :

'------------------------------------------------------
Sub LeLapinDePaques1()
Dim Temp As Double
Dim N As Integer, A As Long
Dim B As Long, T()
Temp = Timer
Application.ScreenUpdating = False

With Range("a1:g363")
x = .Rows.Count
y = .Columns.Count

ReDim T(1 To x, 1 To y)
For A = 1 To UBound(T, 1)
For B = 1 To UBound(T, 2)
T(A, B) = N
N = N + 1
Next
Next
.Value = T
' .ColumnWidth = 16 'Largeur colonne
.Columns.AutoFit 'Largeur colonne selon la plus large
.RowHeight = 79.5 'Hauteur ligne
.Font.Name = "Arial" 'Police
.Font.Size = 36 'Taille police
.NumberFormat = "###0"".""" 'Met un point à la fin"
.HorizontalAlignment = xlCenter 'Centrer le contenu
.VerticalAlignment = xlCenter 'Centrer le contenu
End With
Application.ScreenUpdating = True
MsgBox Timer - Temp
End Sub
'------------------------------------------------------
Avatar
Jacquouille
Bonjour Denis
ta macro est bien belle.
Pour info, 1,7 sec et pas un seul clignotement. -)
Mais, elle commence les n° à zéro.
Et, s'il y a un zéro, il n'y a forcément pas de 2541° n°..... or la découpe
du terrain possède ce 2541° carré.
Je vais essayer de comprendre ce système de tableau.
Grand merci

Jacquouille

" Le vin est au repas ce que le parfum est à la femme."
"MichD" a écrit dans le message de groupe de discussion :
mfrg52$omi$

Bonjour,

Tu pourrais aussi écrire la procédure comme ceci :

'------------------------------------------------------
Sub LeLapinDePaques1()
Dim Temp As Double
Dim N As Integer, A As Long
Dim B As Long, T()
Temp = Timer
Application.ScreenUpdating = False

With Range("a1:g363")
x = .Rows.Count
y = .Columns.Count

ReDim T(1 To x, 1 To y)
For A = 1 To UBound(T, 1)
For B = 1 To UBound(T, 2)
T(A, B) = N
N = N + 1
Next
Next
.Value = T
' .ColumnWidth = 16 'Largeur colonne
.Columns.AutoFit 'Largeur colonne selon la plus large
.RowHeight = 79.5 'Hauteur ligne
.Font.Name = "Arial" 'Police
.Font.Size = 36 'Taille police
.NumberFormat = "###0"".""" 'Met un point à la fin"
.HorizontalAlignment = xlCenter 'Centrer le contenu
.VerticalAlignment = xlCenter 'Centrer le contenu
End With
Application.ScreenUpdating = True
MsgBox Timer - Temp
End Sub
'------------------------------------------------------


---
L'absence de virus dans ce courrier électronique a été vérifiée par le logiciel antivirus Avast.
http://www.avast.com
Avatar
Jacquouille
Opus,

Erreur dans la lecture du temps.
Il faut lire 0,07 sec contre 0,54 avec l'autre macro.

Ah, ces chronos, c'est pire que qu'aux essais de qualif en F1 -))


Jacquouille

" Le vin est au repas ce que le parfum est à la femme."
"Jacquouille" a écrit dans le message de groupe de discussion :
mfrj80$10h$

Bonjour Denis
ta macro est bien belle.
Pour info, 1,7 sec et pas un seul clignotement. -)
Mais, elle commence les n° à zéro.
Et, s'il y a un zéro, il n'y a forcément pas de 2541° n°..... or la découpe
du terrain possède ce 2541° carré.
Je vais essayer de comprendre ce système de tableau.
Grand merci

Jacquouille

" Le vin est au repas ce que le parfum est à la femme."
"MichD" a écrit dans le message de groupe de discussion :
mfrg52$omi$

Bonjour,

Tu pourrais aussi écrire la procédure comme ceci :

'------------------------------------------------------
Sub LeLapinDePaques1()
Dim Temp As Double
Dim N As Integer, A As Long
Dim B As Long, T()
Temp = Timer
Application.ScreenUpdating = False

With Range("a1:g363")
x = .Rows.Count
y = .Columns.Count

ReDim T(1 To x, 1 To y)
For A = 1 To UBound(T, 1)
For B = 1 To UBound(T, 2)
T(A, B) = N
N = N + 1
Next
Next
.Value = T
' .ColumnWidth = 16 'Largeur colonne
.Columns.AutoFit 'Largeur colonne selon la plus large
.RowHeight = 79.5 'Hauteur ligne
.Font.Name = "Arial" 'Police
.Font.Size = 36 'Taille police
.NumberFormat = "###0"".""" 'Met un point à la fin"
.HorizontalAlignment = xlCenter 'Centrer le contenu
.VerticalAlignment = xlCenter 'Centrer le contenu
End With
Application.ScreenUpdating = True
MsgBox Timer - Temp
End Sub
'------------------------------------------------------


---
L'absence de virus dans ce courrier électronique a été vérifiée par le
logiciel antivirus Avast.
http://www.avast.com" target="_blank" class="text-blue hover:opacity-90 " style="word-break: break-all;" rel="noopener nofollow">http://www.avast.com


---
L'absence de virus dans ce courrier électronique a été vérifiée par le logiciel antivirus Avast.
http://www.avast.com" target="_blank" class="text-blue hover:opacity-90 " style="word-break: break-all;" rel="noopener nofollow">http://www.avast.com
Avatar
Jacquouille
Il n'est pas mort, mais il nous manque.
Merci pour ces précisions (N=0 sur la ligne de départ)


Jacquouille

" Le vin est au repas ce que le parfum est à la femme."
"Jacky" a écrit dans le message de groupe de discussion :
mfrco5$ga1$

Re..
Par contre, à quoi sert ta 2° ligne: Application.ScreenUpdatingúlse


Désactive momentanément l'actualisation de l'écran, comme il y a
théoriquement 363 affichages avec la boucle,
cela fera gagner quelque nanoseconde ;o))
En pratique je dirai, complètement inutile dans CE CAS.......;o)

Juste une 2° question: ne faut-il pas poser au départ N=1 ?


Non, a condition que cette macro reste en l'état.
N = N + 1
Placé avant
C.Value = N

Comme N est déclaré "integer" à chaque lancement, elle est à zéro par défaut
sauf si elle est déclarée public.

Le capitaine [ ] est bien aussi. AV l'employait souvent pour [c]


AV était pendant longtemps un de mes maitres.
J'aimais bien aussi ses "remises dans le droit chemin", quelquefois très
virulentes.
Dommage de ne plus le voir ici.

--
Joyeuses Pâques
Jacky





---
L'absence de virus dans ce courrier électronique a été vérifiée par le logiciel antivirus Avast.
http://www.avast.com
Avatar
Jacquouille
.... comme les chronos en F1 -))



Jacquouille

" Le vin est au repas ce que le parfum est à la femme."
"Patrick" a écrit dans le message de groupe de discussion :
mfrcpi$gca$

à la déclaration de N , il est à zéro donc il faut l'incrémmenter dès le
départ :)

Patrick


"Jacquouille" a écrit dans le message de news:
mfr7n5$4ge$
Juste une 2° question: ne faut-il pas poser au départ N=1 ?

Jacquouille

" Le vin est au repas ce que le parfum est à la femme."
"Jacky" a écrit dans le message de groupe de discussion :
mfqmbc$s26$

Bonjour en ce dimanche de Pâques

'-------------------------------------
Sub LeLapinDePaques()
Dim N As Integer, C As Range
Application.ScreenUpdating = False
For Each C In [a1:g363]
N = N + 1
C.Value = N
Next
With [a1:g363]
' .ColumnWidth = 16 'Largeur colonne
.Columns.AutoFit 'Largeur colonne selon la plus large
.RowHeight = 79.5 'Hauteur ligne
.Font.Name = "Arial" 'Police
.Font.Size = 36 'Taille police
.NumberFormat = "###0"".""" 'Met un point à la fin"
.HorizontalAlignment = xlCenter 'Centrer le contenu
.VerticalAlignment = xlCenter 'Centrer le contenu
End With
Application.ScreenUpdating = True
End Sub
'--------------------------------------
--
Salutations
JJ



---
L'absence de virus dans ce courrier électronique a été vérifiée par le
logiciel antivirus Avast.
http://www.avast.com" target="_blank" class="text-blue hover:opacity-90 " style="word-break: break-all;" rel="noopener nofollow">http://www.avast.com" target="_blank" class="text-blue hover:opacity-90 " style="word-break: break-all;" rel="noopener nofollow">http://www.avast.com" target="_blank" class="text-blue hover:opacity-90 " style="word-break: break-all;" rel="noopener nofollow">http://www.avast.com






---
L'absence de virus dans ce courrier electronique a ete verifiee par le
logiciel antivirus Avast.
http://www.avast.com" target="_blank" class="text-blue hover:opacity-90 " style="word-break: break-all;" rel="noopener nofollow">http://www.avast.com" target="_blank" class="text-blue hover:opacity-90 " style="word-break: break-all;" rel="noopener nofollow">http://www.avast.com" target="_blank" class="text-blue hover:opacity-90 " style="word-break: break-all;" rel="noopener nofollow">http://www.avast.com


---
L'absence de virus dans ce courrier électronique a été vérifiée par le logiciel antivirus Avast.
http://www.avast.com" target="_blank" class="text-blue hover:opacity-90 " style="word-break: break-all;" rel="noopener nofollow">http://www.avast.com" target="_blank" class="text-blue hover:opacity-90 " style="word-break: break-all;" rel="noopener nofollow">http://www.avast.com" target="_blank" class="text-blue hover:opacity-90 " style="word-break: break-all;" rel="noopener nofollow">http://www.avast.com
Avatar
MichD
il n'y a forcément pas de 2541° n°..... or la découpe
du terrain possède ce 2541° carré.


Alors comme ceci :


Sub LeLapinDePaques1()
Dim Temp As Double
Dim N As Integer, A As Long
Dim B As Long, T()
Temp = Timer
Application.ScreenUpdating = False

With Range("a1:g363")
x = .Rows.Count
y = .Columns.Count

ReDim T(1 To x, 1 To y)
N = 1 '<<<<<<<<============Îtte ligne a été ajoutée.
For A = 1 To UBound(T, 1)
For B = 1 To UBound(T, 2)
T(A, B) = N
N = N + 1
Next
Next
.Value = T
' .ColumnWidth = 16 'Largeur colonne
.Columns.AutoFit 'Largeur colonne selon la plus large
.RowHeight = 79.5 'Hauteur ligne
.Font.Name = "Arial" 'Police
.Font.Size = 36 'Taille police
.NumberFormat = "###0"".""" 'Mets un point à la fin"
.HorizontalAlignment = xlCenter 'Centrer le contenu
.VerticalAlignment = xlCenter 'Centrer le contenu
End With
Application.ScreenUpdating = True
MsgBox Timer - Temp
End Sub
Avatar
Jacquouille
OK, merci Denis
Mais, dis-moi (juste pour mériter tes œufs au chocolat)
à quoi correspond T() dans ta déclaration de variables?
Merci et bonne soirée
Jacques



Jacquouille

" Le vin est au repas ce que le parfum est à la femme."
"MichD" a écrit dans le message de groupe de discussion :
mfs6dr$kne$

il n'y a forcément pas de 2541° n°..... or la découpe
du terrain possède ce 2541° carré.


Alors comme ceci :


Sub LeLapinDePaques1()
Dim Temp As Double
Dim N As Integer, A As Long
Dim B As Long, T()
Temp = Timer
Application.ScreenUpdating = False

With Range("a1:g363")
x = .Rows.Count
y = .Columns.Count

ReDim T(1 To x, 1 To y)
N = 1 '<<<<<<<<============Îtte ligne a été ajoutée.
For A = 1 To UBound(T, 1)
For B = 1 To UBound(T, 2)
T(A, B) = N
N = N + 1
Next
Next
.Value = T
' .ColumnWidth = 16 'Largeur colonne
.Columns.AutoFit 'Largeur colonne selon la plus large
.RowHeight = 79.5 'Hauteur ligne
.Font.Name = "Arial" 'Police
.Font.Size = 36 'Taille police
.NumberFormat = "###0"".""" 'Mets un point à la fin"
.HorizontalAlignment = xlCenter 'Centrer le contenu
.VerticalAlignment = xlCenter 'Centrer le contenu
End With
Application.ScreenUpdating = True
MsgBox Timer - Temp
End Sub


---
L'absence de virus dans ce courrier électronique a été vérifiée par le logiciel antivirus Avast.
http://www.avast.com
1 2 3 4