IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

probleme en vba [XL-2007]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    retraite
    Inscrit en
    Avril 2010
    Messages
    325
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : Espagne

    Informations professionnelles :
    Activité : retraite
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2010
    Messages : 325
    Par défaut probleme en vba
    bonsoir
    j'ai un tableau de 40 colonnes sur 65 lignes.
    je souhaiterais que soit comptabilise le nombre de X dans une cellules en horizontales. et que cela fasse la meme chose sur les 65 lignes inferieures.
    je ne sais pas comment faire en vba.
    cris

  2. #2
    Membre Expert Avatar de mayekeul
    Inscrit en
    Août 2005
    Messages
    1 369
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 1 369
    Par défaut
    bonjour,

    tu peux t'inspirer de ceci

    cellules contenant seulement "X"

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    for i=0 to 64
    NombreDeX_PourLaLigne=application.worksheetfunction.countif(range("A1:A40").offset(i,0),"X")
    next i
    cellules dont on trouve X à l'intérieur

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    for i=1 to 65
    NombreDeX_PourLaLigne=0
    for j= 1 to 40
    if instr(cells(i,j),"X") then NombreDeX_PourLaLigne=NombreDeX_PourLaLigne+1
    next j
    next i

  3. #3
    Membre éclairé
    Homme Profil pro
    retraite
    Inscrit en
    Avril 2010
    Messages
    325
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : Espagne

    Informations professionnelles :
    Activité : retraite
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2010
    Messages : 325
    Par défaut
    bonjour
    j'ai essayer le code, mais je n'est pas de resultat.
    mon tableau commence de la colonne C10 a AK10 et de la ligne C10 a C74 ce qui fait que le tableau va de C10 a AK74, et je souhaiterais que le comptage des X se fait en bout de chaque ligne en AK10, AK11 etc..
    je seche un peu.
    cris

  4. #4
    Membre Expert Avatar de mayekeul
    Inscrit en
    Août 2005
    Messages
    1 369
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 1 369
    Par défaut
    le code était juste un exemple à adapter

    louke :
    si tu ne compte que les cellule ne contenant que "X"
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Dim R, C
     
    For R = 0 To 64
        Range("AL10").Offset(R, 0) = Application.WorksheetFunction.CountIf(Range("C10:AK10").Offset(R, 0), "X")
    Next I
    si tu comptes les cellules contenant entre autres "X"

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Dim R, C
     
    For R = 3 To 67
        For C = 3 To Columns("AK").Column
            If InStr(Cells(R, C), "X") Then Range("AL10") = Range("AL10") + 1
        Next J
    Next I

  5. #5
    Expert éminent Avatar de mercatog
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    9 435
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations forums :
    Inscription : Juillet 2008
    Messages : 9 435
    Par défaut
    Bonjour
    Une autre proposition
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Sub TEST()
     
    Application.ScreenUpdating = False
    With Sheets("Feuil1").Range("AL10:AL74")
        .Formula = "=Countif(C10:AK10,""X"")"
        .Value = .Value
    End With
    End Sub

  6. #6
    Membre éclairé
    Homme Profil pro
    retraite
    Inscrit en
    Avril 2010
    Messages
    325
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : Espagne

    Informations professionnelles :
    Activité : retraite
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2010
    Messages : 325
    Par défaut
    j'ai adapter ton code Mercatog, et j'ai le resultat suivant, il fait un ci¡umul des lignes, je joint une capture d'ecran


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    Sub changement_gaz()
    '
    Application.ScreenUpdating = False
    With Selection.Interior
       .Color = 65535
     ActiveCell.FormulaR1C1 = "X"
         With Selection
            .HorizontalAlignment = xlCenter
            .VerticalAlignment = xlCenter
        End With
     
     
    With Sheets("Calendrier").Range("AM10:AM74")
        .Formula = "=Countif(C10:AK74,""X"")"
        .Value = .Value
    End With
     
    End With
    Application.ScreenUpdating = True
    End Sub
    cris
    Images attachées Images attachées  

  7. #7
    Membre Expert Avatar de mayekeul
    Inscrit en
    Août 2005
    Messages
    1 369
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 1 369
    Par défaut
    je ne comprends quand même pas pourquoi tu ne mets pas la formule directement sur la feuille au bout de chaque ligne.
    c'est quand même plus simple et plus rapide non??

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Probleme en VBA Excel : supprimer une ligne doublante
    Par yanly dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 05/07/2007, 13h54
  2. [VBA-E]Probleme macro VBA excel 2000 2003
    Par skichatchat dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 18/04/2007, 21h16
  3. Probleme Langage VBA
    Par nassu dans le forum Access
    Réponses: 21
    Dernier message: 20/05/2006, 09h53
  4. Probleme code vba
    Par alex38 dans le forum Access
    Réponses: 6
    Dernier message: 18/04/2006, 12h10
  5. probleme code vba ne s'execute pas apres instruction sql
    Par arnogef dans le forum Requêtes et SQL.
    Réponses: 9
    Dernier message: 29/12/2005, 12h34

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo