liste de nom avec cellule données vides Le sujet est résolu

Y compris Google Docs, Slides et toute autre question en lien avec une application Google
B
Bidouille 2
Nouveau venu
Nouveau venu
Messages : 7
Inscrit le : 8 janvier 2019
Version d'Excel : 2007 fr

Message par Bidouille 2 » 8 janvier 2019, 23:05

Bonjour,
sur une feuille de calcul "liste coplay", je dispose de 4 colonnes
A: nom de joueurs
B coplay 1 qui sert à noté le nom du 1er joueur aillant accès au jeu du joueur de la colonne A
C coplay 2 qui sert à noté le nom du 2ème joueur aillant accès au jeu du joueur de la colonne A
D nombre de place restante au joueur de la colonne A
je désire que sur la feuille "sans coplay" s'inscrive automatiquement tous les joueurs de la feuille
"liste coplay" dont les colonnes B ET C sont vides
Copie de Coplay histria.xlsx
(115.07 Kio) Téléchargé 13 fois
merci de votre aide
Avatar du membre
dhany
Passionné d'Excel
Passionné d'Excel
Messages : 6'698
Appréciations reçues : 645
Inscrit le : 3 octobre 2017
Version d'Excel : 2007 FR

Message par dhany » 9 janvier 2019, 00:08

Bonjour Bidouille 2,

:bv:

je te retourne ton fichier modifié :
Coplay histria.xlsm
(124.46 Kio) Téléchargé 13 fois
* tu peux voir que la 2ème feuille est vide
* va sur la 1ère feuille, et fais Ctrl e ➯ travail effectué !  :)

Alt F11 pour voir le code VBA, puis revenir sur Excel

si besoin, tu peux demander une adaptation.
merci de me dire si ça te convient.

dhany
B
Bidouille 2
Nouveau venu
Nouveau venu
Messages : 7
Inscrit le : 8 janvier 2019
Version d'Excel : 2007 fr

Message par Bidouille 2 » 9 janvier 2019, 21:47

Bonsoir Dhany,
je te remercie, c'est exactement ce dont j'ai besoin,
je regarde si ça fonctionne avec les pages google sheet avant de mettre sujet clos
encore merci à toi.
Bidouille 2
B
Bidouille 2
Nouveau venu
Nouveau venu
Messages : 7
Inscrit le : 8 janvier 2019
Version d'Excel : 2007 fr

Message par Bidouille 2 » 9 janvier 2019, 22:17

Re bonsoir,
aurais tu la possibilité de l'adapter à google sheet?
il semble que les macros soit légèrement différentes
autrement ça fonctionne à merveille sous excel,
mais comme je le partage sur google drive...
autrement pas grave je m'arrangerai pour le partager avec dropbox.
encore merci
Bidouille
Avatar du membre
dhany
Passionné d'Excel
Passionné d'Excel
Messages : 6'698
Appréciations reçues : 645
Inscrit le : 3 octobre 2017
Version d'Excel : 2007 FR

Message par dhany » 10 janvier 2019, 01:37

Bonjour Bidouille 2,
tu a écrit :aurais-tu la possibilité de l'adapter à google sheet ?
non, je connais Google Sheet seulement de nom, je ne l'utilise pas ; je sais quand même qu'il ne comprend pas VBA, car son langage de programmation est un autre langage, dérivé de Javascript, appelé GAS (Google Apps Script).

je te laisse lire ce lien : https://fr.wikipedia.org/wiki/Google_Apps_Script

dhany
B
Bidouille 2
Nouveau venu
Nouveau venu
Messages : 7
Inscrit le : 8 janvier 2019
Version d'Excel : 2007 fr

Message par Bidouille 2 » 10 janvier 2019, 12:01

je te remercie beaucoup, je vais regarder ça de plus prêt...
Avatar du membre
dhany
Passionné d'Excel
Passionné d'Excel
Messages : 6'698
Appréciations reçues : 645
Inscrit le : 3 octobre 2017
Version d'Excel : 2007 FR

Message par dhany » 13 janvier 2019, 18:55

Bonjour Bidouille 2,

:oops:  j'viens d'voir que j'ai fait une erreur dans mon code VBA : j'ai inclus dans la boucle For i = 2 To n .. Next i cette partie :
With .[A1]
  .Font.Bold = -1: .HorizontalAlignment = 3
  .Value = "JOUEURS"
End With
donc elle est exécutée à chaque « tour » de boucle alors qu'une seule fois suffit ! voici le fichier corrigé :
Coplay histria.xlsm
(124.44 Kio) Téléchargé 12 fois

le code complet est maint'nant celui-ci :
Option Explicit

Sub Essai()
  If ActiveSheet.Name <> "Liste coplays" Then Exit Sub
  Dim Tbl, Joueur$, lig&, n&, i&
  n = Cells(Rows.Count, 1).End(3).Row: If n = 1 Then Exit Sub
  Tbl = [A1].Resize(n, 3)
  With Worksheets("Sans coplay")
    .Columns(1).ClearContents: lig = 2
    For i = 2 To n
      Joueur = Tbl(i, 1)
      If Joueur <> "" Then
        If Tbl(i, 2) = "" And Tbl(i, 3) = "" Then _
          .Cells(lig, 1) = Joueur: lig = lig + 1
      End If
    Next i
    With .[A1]
      .Font.Bold = -1: .HorizontalAlignment = 3
      .Value = "JOUEURS"
    End With
    .Select
  End With
End Sub
bonne chance pour l'adaptation avec Google Apps Script !   :trfl:

dhany
B
Bidouille 2
Nouveau venu
Nouveau venu
Messages : 7
Inscrit le : 8 janvier 2019
Version d'Excel : 2007 fr

Message par Bidouille 2 » 14 janvier 2019, 11:07

Bonjour,
je te remercie, cette subtilité était au dessus de mes compétences...
pour l'adaptation Google je rame un peu lol mais je ne désespère pas, ça entretient les neurones lol
bonne journée et encore merci de ton aide
Bidouille
B
Bidouille 2
Nouveau venu
Nouveau venu
Messages : 7
Inscrit le : 8 janvier 2019
Version d'Excel : 2007 fr

Message par Bidouille 2 » 23 janvier 2019, 13:56

si quelqu'un peut adapter cette réponse de Dhany à Google sheet, je lui en serai vraiment reconnaissant, la je rame ... merci d'avance
Option Explicit

Sub Essai()
  If ActiveSheet.Name <> "Liste coplays" Then Exit Sub
  Dim Tbl, Joueur$, lig&, n&, i&
  n = Cells(Rows.Count, 1).End(3).Row: If n = 1 Then Exit Sub
  Tbl = [A1].Resize(n, 3)
  With Worksheets("Sans coplay")
    .Columns(1).ClearContents: lig = 2
    For i = 2 To n
      Joueur = Tbl(i, 1)
      If Joueur <> "" Then
        If Tbl(i, 2) = "" And Tbl(i, 3) = "" Then _
          .Cells(lig, 1) = Joueur: lig = lig + 1
      End If
    Next i
    With .[A1]
      .Font.Bold = -1: .HorizontalAlignment = 3
      .Value = "JOUEURS"
    End With
    .Select
  End With
End Sub
Merci encore à toi Dhany je jongle entre excel et sheet pour m'en servir ça m'est vraiment bien utile
B
Bidouille 2
Nouveau venu
Nouveau venu
Messages : 7
Inscrit le : 8 janvier 2019
Version d'Excel : 2007 fr

Message par Bidouille 2 » 24 février 2019, 19:15

Merci à tous,
pour googlesheet j'ai trouvé cette formule qui fonctionne parfaitement

=FILTER(A:C;ESTVIDE(B:B);ESTVIDE(C:C))
Répondre Sujet précédentSujet suivant
  • Sujets similaires
    Réponses
    Vues
    Dernier message