Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Sélectionner plage sans les cellules valeur nul

  • Initiateur de la discussion Initiateur de la discussion Chasse
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Chasse

XLDnaute Occasionnel
Bonjour le forum

Les cellules (“A11 à L125”) Contiennent toutes des formules

J’aimerais que la sélection s’arête a la dernière ligne qui renvoie des valeurs

Avec cette macro ça me sélectionne toutes les cellules y compris les cellules qui renvoie 0
Code:
Sheets("Transfère").Select
Range("A11:L" & Range("L65536").End(xlUp).Offset(0, 1).Row).Copy

D’avance merci
 
Re : Sélectionner plage sans les cellules valeur nul

Bonjour,

Voici une proposition (non testée)

Code:
Sub Transfert()
Dim rg As Range
Dim c As Range

Set rg = Range("A11") 'il faut commencer à quelque part...
For Each c In Range("A11:L" & Range("L65536").End(xlUp).Offset(0, 1).Row)
    If c.Value <> 0 Then
        Set rg = Union(rg, c)
    End If
Next c

rg.Copy [Destination] '***
End Sub

A+
 
Re : Sélectionner plage sans les cellules valeur nul

Bonjour Chasse

Salut Grand Chaman Excel

J'avais quasiment la même chose mais avec detection de la 1ere cellule non vide

Code:
Sub test()
Dim tot As Range
For Each cel In Range("A11:L" & Range("L65536").End(xlUp).Row)
If cel.Value <> 0 And cel.Value <> "" Then
  Set tot = cel
  Exit For
End If
Next
For Each cel In Range("A11:L" & Range("L65536").End(xlUp).Row)
If cel.Value <> 0 And cel.Value <> "" Then
  Set tot = Application.Union(tot, cel)
End If
Next
tot.Select
End Sub
 
Re : Sélectionner plage sans les cellules valeur nul

Bonjour Chasse, salut GrandChaman,

Ceci n'est pas très clair :

J’aimerais que la sélection s’arête a la dernière ligne qui renvoie des valeurs

Par ailleurs, qu'y a-t-il dans les cellules quand ce n'est pas zéro ?

Un fichier joint permettrait de ne pas proposer une solution à l'aveuglette, comme celle-ci par exemple :

Code:
Sub Test()
Dim r As Range, derlig As Long, plage As Range
With Sheets("Transfère")
  For Each r In .[A11:L125].Rows
    If Application.Sum(r) Then derlig = r.Row
  Next
  If derlig = 0 Then MsgBox "Bof...": Exit Sub
  Set plage = .Range("A11:L" & derlig)
  .Activate 'en VBA normalement  c'est inutile
  plage.Copy
  '---etc---
End With
End Sub
J'ai supposé que les cellules contiennent des valeurs numériques...

Edit : salut pierrejean, heureux de te croiser 🙂

A+
 
Dernière édition:
Re : Sélectionner plage sans les cellules valeur nul

Bonjour GrandChaman, pierrejean job75

Merci de votre aide

les macro de pierrejean et job75 fonctionne

les cellules contiennent des valeurs numériques... des formats date, monétaires, texte et « CONCATENER(nom et prénom) »
La colonne L format date

Je vais employer la macro de job75 qui sélectionne la plage complète, tout en gardant celle de pierrejean en réserve.

Je vous remercie infiniment
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

  • Question Question
Microsoft 365 Code VBA
Réponses
10
Affichages
1 K
Réponses
7
Affichages
832
Réponses
2
Affichages
582
  • Question Question
Microsoft 365 Question code VBA
Réponses
2
Affichages
615
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…