Nombre de Plages avec des cellules non vides dans une feuille.
4 réponses
RV
Bonjour =E0 tous et bonne journ=E9e.
Voici ma question : dans une feuille d'un classeur, je=20
voudrais connaitre le nombre de plages de cellules non=20
vides et nommer chacune de ces plages : plage 1 plage 2 etc
Comment puis je m'y prendre ?
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
michdenis
Bonjour RV,
Essaie ceci : à copier dans un module standard, adapte le nom de la feuille dans la procédure selon ton application.
Attention aux lignes coupées par le service de messagerie !
'---------------------------- Sub NommerPlageNonVide() Dim Tblo(), B As Integer, X As Integer Dim A As Integer, Rg As Range
On Error Resume Next For X = 0 To 1 With Worksheets("Feuil1") If X = 0 Then Set Rg = .UsedRange.SpecialCells(xlCellTypeConstants) Else Set Rg = .UsedRange.SpecialCells(xlCellTypeFormulas) End If End With
If Not Rg Is nothint Then For Each c In Rg.Areas ReDim Preserve Tblo(A) If IsError(Application.Match(c.CurrentRegion.Address, Tblo, 0)) Then Tblo(A) = c.CurrentRegion.Address B = B + 1 c.CurrentRegion.Name = "Plage" & B A = A + 1 End If
Next End If Next Set Rg = Nothing End Sub '----------------------------
Salutations!
"RV" a écrit dans le message de news:cde601c43980$8ad134e0$ Bonjour à tous et bonne journée.
Voici ma question : dans une feuille d'un classeur, je voudrais connaitre le nombre de plages de cellules non vides et nommer chacune de ces plages : plage 1 plage 2 etc Comment puis je m'y prendre ?
merci pour votra aide
Hervé
Bonjour RV,
Essaie ceci : à copier dans un module standard, adapte le nom de la feuille dans la procédure selon ton application.
Attention aux lignes coupées par le service de messagerie !
'----------------------------
Sub NommerPlageNonVide()
Dim Tblo(), B As Integer, X As Integer
Dim A As Integer, Rg As Range
On Error Resume Next
For X = 0 To 1
With Worksheets("Feuil1")
If X = 0 Then
Set Rg = .UsedRange.SpecialCells(xlCellTypeConstants)
Else
Set Rg = .UsedRange.SpecialCells(xlCellTypeFormulas)
End If
End With
If Not Rg Is nothint Then
For Each c In Rg.Areas
ReDim Preserve Tblo(A)
If IsError(Application.Match(c.CurrentRegion.Address, Tblo, 0)) Then
Tblo(A) = c.CurrentRegion.Address
B = B + 1
c.CurrentRegion.Name = "Plage" & B
A = A + 1
End If
Next
End If
Next
Set Rg = Nothing
End Sub
'----------------------------
Salutations!
"RV" <anonymous@discussions.microsoft.com> a écrit dans le message de news:cde601c43980$8ad134e0$a401280a@phx.gbl...
Bonjour à tous et bonne journée.
Voici ma question : dans une feuille d'un classeur, je
voudrais connaitre le nombre de plages de cellules non
vides et nommer chacune de ces plages : plage 1 plage 2 etc
Comment puis je m'y prendre ?
Essaie ceci : à copier dans un module standard, adapte le nom de la feuille dans la procédure selon ton application.
Attention aux lignes coupées par le service de messagerie !
'---------------------------- Sub NommerPlageNonVide() Dim Tblo(), B As Integer, X As Integer Dim A As Integer, Rg As Range
On Error Resume Next For X = 0 To 1 With Worksheets("Feuil1") If X = 0 Then Set Rg = .UsedRange.SpecialCells(xlCellTypeConstants) Else Set Rg = .UsedRange.SpecialCells(xlCellTypeFormulas) End If End With
If Not Rg Is nothint Then For Each c In Rg.Areas ReDim Preserve Tblo(A) If IsError(Application.Match(c.CurrentRegion.Address, Tblo, 0)) Then Tblo(A) = c.CurrentRegion.Address B = B + 1 c.CurrentRegion.Name = "Plage" & B A = A + 1 End If
Next End If Next Set Rg = Nothing End Sub '----------------------------
Salutations!
"RV" a écrit dans le message de news:cde601c43980$8ad134e0$ Bonjour à tous et bonne journée.
Voici ma question : dans une feuille d'un classeur, je voudrais connaitre le nombre de plages de cellules non vides et nommer chacune de ces plages : plage 1 plage 2 etc Comment puis je m'y prendre ?
merci pour votra aide
Hervé
michdenis
En supplément,
Si tu veux obtenir le nombre de plage, tu ajoutes ceci comme dernière ligne à ton code
Msgbox A -1 & " Plages de cellules dénombrées"
Salutations!
Essaie ceci : à copier dans un module standard, adapte le nom de la feuille dans la procédure selon ton application.
Attention aux lignes coupées par le service de messagerie !
'---------------------------- Sub NommerPlageNonVide() Dim Tblo(), B As Integer, X As Integer Dim A As Integer, Rg As Range
On Error Resume Next For X = 0 To 1 With Worksheets("Feuil1") If X = 0 Then Set Rg = .UsedRange.SpecialCells(xlCellTypeConstants) Else Set Rg = .UsedRange.SpecialCells(xlCellTypeFormulas) End If End With
If Not Rg Is nothint Then For Each c In Rg.Areas ReDim Preserve Tblo(A) If IsError(Application.Match(c.CurrentRegion.Address, Tblo, 0)) Then Tblo(A) = c.CurrentRegion.Address B = B + 1 c.CurrentRegion.Name = "Plage" & B A = A + 1 End If
Next End If Next Set Rg = Nothing End Sub '----------------------------
Salutations!
"RV" a écrit dans le message de news:cde601c43980$8ad134e0$ Bonjour à tous et bonne journée.
Voici ma question : dans une feuille d'un classeur, je voudrais connaitre le nombre de plages de cellules non vides et nommer chacune de ces plages : plage 1 plage 2 etc Comment puis je m'y prendre ?
merci pour votra aide
Hervé
En supplément,
Si tu veux obtenir le nombre de plage, tu ajoutes ceci comme dernière ligne à ton code
Msgbox A -1 & " Plages de cellules dénombrées"
Salutations!
Essaie ceci : à copier dans un module standard, adapte le nom de la feuille dans la procédure selon ton application.
Attention aux lignes coupées par le service de messagerie !
'----------------------------
Sub NommerPlageNonVide()
Dim Tblo(), B As Integer, X As Integer
Dim A As Integer, Rg As Range
On Error Resume Next
For X = 0 To 1
With Worksheets("Feuil1")
If X = 0 Then
Set Rg = .UsedRange.SpecialCells(xlCellTypeConstants)
Else
Set Rg = .UsedRange.SpecialCells(xlCellTypeFormulas)
End If
End With
If Not Rg Is nothint Then
For Each c In Rg.Areas
ReDim Preserve Tblo(A)
If IsError(Application.Match(c.CurrentRegion.Address, Tblo, 0)) Then
Tblo(A) = c.CurrentRegion.Address
B = B + 1
c.CurrentRegion.Name = "Plage" & B
A = A + 1
End If
Next
End If
Next
Set Rg = Nothing
End Sub
'----------------------------
Salutations!
"RV" <anonymous@discussions.microsoft.com> a écrit dans le message de news:cde601c43980$8ad134e0$a401280a@phx.gbl...
Bonjour à tous et bonne journée.
Voici ma question : dans une feuille d'un classeur, je
voudrais connaitre le nombre de plages de cellules non
vides et nommer chacune de ces plages : plage 1 plage 2 etc
Comment puis je m'y prendre ?
Si tu veux obtenir le nombre de plage, tu ajoutes ceci comme dernière ligne à ton code
Msgbox A -1 & " Plages de cellules dénombrées"
Salutations!
Essaie ceci : à copier dans un module standard, adapte le nom de la feuille dans la procédure selon ton application.
Attention aux lignes coupées par le service de messagerie !
'---------------------------- Sub NommerPlageNonVide() Dim Tblo(), B As Integer, X As Integer Dim A As Integer, Rg As Range
On Error Resume Next For X = 0 To 1 With Worksheets("Feuil1") If X = 0 Then Set Rg = .UsedRange.SpecialCells(xlCellTypeConstants) Else Set Rg = .UsedRange.SpecialCells(xlCellTypeFormulas) End If End With
If Not Rg Is nothint Then For Each c In Rg.Areas ReDim Preserve Tblo(A) If IsError(Application.Match(c.CurrentRegion.Address, Tblo, 0)) Then Tblo(A) = c.CurrentRegion.Address B = B + 1 c.CurrentRegion.Name = "Plage" & B A = A + 1 End If
Next End If Next Set Rg = Nothing End Sub '----------------------------
Salutations!
"RV" a écrit dans le message de news:cde601c43980$8ad134e0$ Bonjour à tous et bonne journée.
Voici ma question : dans une feuille d'un classeur, je voudrais connaitre le nombre de plages de cellules non vides et nommer chacune de ces plages : plage 1 plage 2 etc Comment puis je m'y prendre ?
merci pour votra aide
Hervé
RV
Merci beaucoup Ca marche impeccable
Cordialement
Hervé
-----Message d'origine----- Bonjour RV,
Essaie ceci : à copier dans un module standard, adapte le nom de la feuille dans la procédure selon ton application.
Attention aux lignes coupées par le service de messagerie !
'---------------------------- Sub NommerPlageNonVide() Dim Tblo(), B As Integer, X As Integer Dim A As Integer, Rg As Range
On Error Resume Next For X = 0 To 1 With Worksheets("Feuil1") If X = 0 Then Set Rg = .UsedRange.SpecialCells (xlCellTypeConstants)
Else Set Rg = .UsedRange.SpecialCells (xlCellTypeFormulas)
End If End With
If Not Rg Is nothint Then For Each c In Rg.Areas ReDim Preserve Tblo(A) If IsError(Application.Match (c.CurrentRegion.Address, Tblo, 0)) Then
Tblo(A) = c.CurrentRegion.Address B = B + 1 c.CurrentRegion.Name = "Plage" & B A = A + 1 End If
Next End If Next Set Rg = Nothing End Sub '----------------------------
Salutations!
"RV" a écrit dans le message de news:cde601c43980$8ad134e0
$
Bonjour à tous et bonne journée.
Voici ma question : dans une feuille d'un classeur, je voudrais connaitre le nombre de plages de cellules non vides et nommer chacune de ces plages : plage 1 plage 2 etc
Comment puis je m'y prendre ?
merci pour votra aide
Hervé
.
Merci beaucoup
Ca marche impeccable
Cordialement
Hervé
-----Message d'origine-----
Bonjour RV,
Essaie ceci : à copier dans un module standard, adapte le
nom de la feuille dans la procédure selon ton application.
Attention aux lignes coupées par le service de
messagerie !
'----------------------------
Sub NommerPlageNonVide()
Dim Tblo(), B As Integer, X As Integer
Dim A As Integer, Rg As Range
On Error Resume Next
For X = 0 To 1
With Worksheets("Feuil1")
If X = 0 Then
Set Rg = .UsedRange.SpecialCells
(xlCellTypeConstants)
Else
Set Rg = .UsedRange.SpecialCells
(xlCellTypeFormulas)
End If
End With
If Not Rg Is nothint Then
For Each c In Rg.Areas
ReDim Preserve Tblo(A)
If IsError(Application.Match
(c.CurrentRegion.Address, Tblo, 0)) Then
Tblo(A) = c.CurrentRegion.Address
B = B + 1
c.CurrentRegion.Name = "Plage" & B
A = A + 1
End If
Next
End If
Next
Set Rg = Nothing
End Sub
'----------------------------
Salutations!
"RV" <anonymous@discussions.microsoft.com> a écrit dans
le message de news:cde601c43980$8ad134e0
$a401280a@phx.gbl...
Bonjour à tous et bonne journée.
Voici ma question : dans une feuille d'un classeur, je
voudrais connaitre le nombre de plages de cellules non
vides et nommer chacune de ces plages : plage 1 plage 2
etc
Essaie ceci : à copier dans un module standard, adapte le nom de la feuille dans la procédure selon ton application.
Attention aux lignes coupées par le service de messagerie !
'---------------------------- Sub NommerPlageNonVide() Dim Tblo(), B As Integer, X As Integer Dim A As Integer, Rg As Range
On Error Resume Next For X = 0 To 1 With Worksheets("Feuil1") If X = 0 Then Set Rg = .UsedRange.SpecialCells (xlCellTypeConstants)
Else Set Rg = .UsedRange.SpecialCells (xlCellTypeFormulas)
End If End With
If Not Rg Is nothint Then For Each c In Rg.Areas ReDim Preserve Tblo(A) If IsError(Application.Match (c.CurrentRegion.Address, Tblo, 0)) Then
Tblo(A) = c.CurrentRegion.Address B = B + 1 c.CurrentRegion.Name = "Plage" & B A = A + 1 End If
Next End If Next Set Rg = Nothing End Sub '----------------------------
Salutations!
"RV" a écrit dans le message de news:cde601c43980$8ad134e0
$
Bonjour à tous et bonne journée.
Voici ma question : dans une feuille d'un classeur, je voudrais connaitre le nombre de plages de cellules non vides et nommer chacune de ces plages : plage 1 plage 2 etc
Comment puis je m'y prendre ?
merci pour votra aide
Hervé
.
RV
Merci beaucoup
-----Message d'origine----- En supplément,
Si tu veux obtenir le nombre de plage, tu ajoutes ceci comme dernière ligne à ton code
Msgbox A -1 & " Plages de cellules dénombrées"
Salutations!
Essaie ceci : à copier dans un module standard, adapte le nom de la feuille dans la procédure selon ton
application.
Attention aux lignes coupées par le service de messagerie !
'---------------------------- Sub NommerPlageNonVide() Dim Tblo(), B As Integer, X As Integer Dim A As Integer, Rg As Range
On Error Resume Next For X = 0 To 1 With Worksheets("Feuil1") If X = 0 Then Set Rg = .UsedRange.SpecialCells (xlCellTypeConstants)
Else Set Rg = .UsedRange.SpecialCells (xlCellTypeFormulas)
End If End With
If Not Rg Is nothint Then For Each c In Rg.Areas ReDim Preserve Tblo(A) If IsError(Application.Match (c.CurrentRegion.Address, Tblo, 0)) Then
Tblo(A) = c.CurrentRegion.Address B = B + 1 c.CurrentRegion.Name = "Plage" & B A = A + 1 End If
Next End If Next Set Rg = Nothing End Sub '----------------------------
Salutations!
"RV" a écrit dans le message de news:cde601c43980$8ad134e0
$
Bonjour à tous et bonne journée.
Voici ma question : dans une feuille d'un classeur, je voudrais connaitre le nombre de plages de cellules non vides et nommer chacune de ces plages : plage 1 plage 2 etc
Comment puis je m'y prendre ?
merci pour votra aide
Hervé
.
Merci beaucoup
-----Message d'origine-----
En supplément,
Si tu veux obtenir le nombre de plage, tu ajoutes ceci
comme dernière ligne à ton code
Msgbox A -1 & " Plages de cellules dénombrées"
Salutations!
Essaie ceci : à copier dans un module standard, adapte
le nom de la feuille dans la procédure selon ton
application.
Attention aux lignes coupées par le service de
messagerie !
'----------------------------
Sub NommerPlageNonVide()
Dim Tblo(), B As Integer, X As Integer
Dim A As Integer, Rg As Range
On Error Resume Next
For X = 0 To 1
With Worksheets("Feuil1")
If X = 0 Then
Set Rg = .UsedRange.SpecialCells
(xlCellTypeConstants)
Else
Set Rg = .UsedRange.SpecialCells
(xlCellTypeFormulas)
End If
End With
If Not Rg Is nothint Then
For Each c In Rg.Areas
ReDim Preserve Tblo(A)
If IsError(Application.Match
(c.CurrentRegion.Address, Tblo, 0)) Then
Tblo(A) = c.CurrentRegion.Address
B = B + 1
c.CurrentRegion.Name = "Plage" & B
A = A + 1
End If
Next
End If
Next
Set Rg = Nothing
End Sub
'----------------------------
Salutations!
"RV" <anonymous@discussions.microsoft.com> a écrit dans
le message de news:cde601c43980$8ad134e0
$a401280a@phx.gbl...
Bonjour à tous et bonne journée.
Voici ma question : dans une feuille d'un classeur, je
voudrais connaitre le nombre de plages de cellules non
vides et nommer chacune de ces plages : plage 1 plage 2
etc
Si tu veux obtenir le nombre de plage, tu ajoutes ceci comme dernière ligne à ton code
Msgbox A -1 & " Plages de cellules dénombrées"
Salutations!
Essaie ceci : à copier dans un module standard, adapte le nom de la feuille dans la procédure selon ton
application.
Attention aux lignes coupées par le service de messagerie !
'---------------------------- Sub NommerPlageNonVide() Dim Tblo(), B As Integer, X As Integer Dim A As Integer, Rg As Range
On Error Resume Next For X = 0 To 1 With Worksheets("Feuil1") If X = 0 Then Set Rg = .UsedRange.SpecialCells (xlCellTypeConstants)
Else Set Rg = .UsedRange.SpecialCells (xlCellTypeFormulas)
End If End With
If Not Rg Is nothint Then For Each c In Rg.Areas ReDim Preserve Tblo(A) If IsError(Application.Match (c.CurrentRegion.Address, Tblo, 0)) Then
Tblo(A) = c.CurrentRegion.Address B = B + 1 c.CurrentRegion.Name = "Plage" & B A = A + 1 End If
Next End If Next Set Rg = Nothing End Sub '----------------------------
Salutations!
"RV" a écrit dans le message de news:cde601c43980$8ad134e0
$
Bonjour à tous et bonne journée.
Voici ma question : dans une feuille d'un classeur, je voudrais connaitre le nombre de plages de cellules non vides et nommer chacune de ces plages : plage 1 plage 2 etc