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

VBScript Discussion :

Récupérer première ligne visible d'un tri


Sujet :

VBScript

  1. #1
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2012
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Mai 2012
    Messages : 15
    Points : 11
    Points
    11
    Par défaut Récupérer première ligne visible d'un tri
    Bonjour,

    Je fais appel à vous car je travail sur un script VBS qui tri des informations de connexion.
    Mon but final est de sortir la dernière connexion de chaque utilisateurs. Seulement je reste bloqué sur un problème et je ne parvient pas à le résoudre.
    Donc mon script fonctionne bien sauf qu'il ne récupert pas les cellules qui m'interessent.
    Voici mon code :
    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
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    Set oXL   = WScript.CreateObject("EXCEL.application" ) 
    oXL.Visible = True 
    'Ouverture du classeur
    oXL.workbooks.open   Classeur 
    Set objWorksheet = oXL.Worksheets(1)
    'Insertion d'une nouvelle ligne
    Set Selection = objWorksheet.Rows(1)
    Selection.EntireRow.insert
    'Convertion du text dans les cellules 
    Set Selection = objWorksheet.Columns(1)
    Set DestinationRange = objWorksheet.Columns(2)
    Selection.TextToColumns DestinationRange, , , ,True
    Selection.Delete
    'Suppression de la première colonne
    Set Selection = objWorksheet.Columns(1)
    Selection.EntireColumn.Delete
    'Adaptation des largeurs de colonne 1-2-3
    objWorksheet.Columns(1).EntireColumn.AutoFit
    objWorksheet.Columns(2).EntireColumn.AutoFit
    objWorksheet.Columns(3).EntireColumn.AutoFit
    'Ajout des entête de colonnes
    objWorksheet.Cells(1,1).FormulaR1C1 = "Date"
    objWorksheet.Cells(1,2).FormulaR1C1 = "Utilisateur"
    objWorksheet.Cells(1,3).FormulaR1C1 = "Remarque"
    'Met en gras les entêtes
    objWorksheet.Range("A1:C1").Font.Bold = True
    'Tri sur les deux premières colonnes
    objWorksheet.Columns("A:B").AutoFilter
    
    'Code qui concerne le permier externe 
    'Tri pour un user(extTransfile)
    objWorksheet.Columns(2).AutoFilter 2,"Nom\extTransfile:"
    'Tri de la date la plus récente à la date la plus ancienne
    objWorksheet.Columns(1).Sort objWorksheet.range("A2"),2
    extern1 = objWorksheet.Cells(2,1).Value & objWorksheet.Cells(2,2).Value
    
    'Code qui concerne le deuxième externe
    'Tri pour un user(extTransfile01)
    objWorksheet.Columns(2).AutoFilter 2,"Nom\extTransfile01:"
    objWorksheet.Columns(1).Sort objWorksheet.range("A2"),2
    extern2 = objWorksheet.Cells(2,1).Value & objWorksheet.Cells(2,2).Value
    Nom : LastUserConnectedcsv_.jpg
Affichages : 156
Taille : 18,0 Ko
    Sur l'image ci-dessus on peut voir que les cellules que je voudrais récupérer sont 08.07.2014 16:00, \extTransfile01 (A11-B11). Mais mon code récupert les deux première cellule de la première ligne soit A2-B2 qui sont cachés ce qui est normal vu que je lui dit de prendre les cellules 2,1 et 2,2.
    Comment dois-je faire pour récupérer les cellules de la première ligne avec des données visible (deuxième ligne en réalité car je compte pas les en-têtes) donc sur mon image A11-B11 ?
    A savoir que mon but est d'automatiser ce processus pour 7 utilisateurs au final.

    Merci d'avance et bonne journée !

  2. #2
    Membre chevronné
    Avatar de NVCfrm
    Homme Profil pro
    Administrateur Système/Réseaux - Developpeur - Consultant
    Inscrit en
    Décembre 2012
    Messages
    1 036
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations professionnelles :
    Activité : Administrateur Système/Réseaux - Developpeur - Consultant
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Décembre 2012
    Messages : 1 036
    Points : 1 917
    Points
    1 917
    Billets dans le blog
    5
    Par défaut
    bonjour,



    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Set Selection = objWorksheet.Columns(1).CurrentRegion
    Set Selection = Selection.Rows(Selection.End(xlDown).Rows.Row - Oxl.Subtotal(3, Selection) - 1)
    extern2 = Selection.Cells(1, 1) & Selection.Cells(1, 2)
    Ousmane


    Quand on tombe dans l'eau, la pluie ne fait plus peur.

Discussions similaires

  1. Filtre automatique: descendre à la première ligne visible
    Par jbonneval dans le forum Général VBA
    Réponses: 2
    Dernier message: 30/06/2015, 09h16
  2. Première ligne d'un bloc try qui se répète en boucle
    Par Marty_and_Doc dans le forum Langage
    Réponses: 5
    Dernier message: 15/01/2015, 21h12
  3. 10 premières lignes triées
    Par nicou_doude dans le forum SQL
    Réponses: 2
    Dernier message: 23/06/2008, 16h14
  4. Récupérer la première ligne d'un fichier
    Par nicolas66 dans le forum MATLAB
    Réponses: 3
    Dernier message: 14/02/2007, 23h08
  5. Récupérer les 50 premières lignes du requête
    Par oceanediana dans le forum Requêtes et SQL.
    Réponses: 4
    Dernier message: 11/08/2006, 11h15

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