Accueil > Forum > > > > bazar de mélange de collection, propriétés, conditions en vba-excel
bazar de mélange de collection, propriétés, conditions en vba-excel
lundi 10 juillet 2006 à 11:22:13 |
bazar de mélange de collection, propriétés, conditions en vba-excel

larsene67
|
bon ,maintenant, je commence à patauger, si quelqu'un pouvait m'aider sur ce bout de code que je n'arrive pas à faire marcher: (suite de http://www.vbfrance.com/infomsg_RECUPERER-PROPRIETE-ELEMENT-COLLECTION-TRAVERS-PARAMETRE-FONCTION-VBA_775175.aspx#3 ) Public Liste As New Collection Public regEx As New VBScript_RegExp_55.RegExp 'New RegExp
Sub sub1() Dim machin As New Classe1
machin.nom = "CHRIST" machin.prénom = "Jesus" machin.age = "33 ans" Liste.Add machin Set machin = Nothing
machin.nom = "LUCAS" machin.prénom = "GEORGES" machin.age = "50 ans" Liste.Add machin Set machin = Nothing
machin.nom = "DES BATIGNOLES" machin.prénom = "Marie-thérese" machin.age = "75 ans" Liste.Add machin Set machin = Nothing
machin.nom = "DES BATIGNOLES" machin.prénom = "Marie-thérese" machin.age = "73 ans" Liste.Add machin Set machin = Nothing
'condition = "Liste(i).nom = "DES BATIGNOLES" and Liste(i).age = "75 ans" Condition = Chr(34) & "Liste(i).nom" & Chr(34) & "=" & Chr(34) & "DES BATIGNOLES" & Chr(34) result = sub2(Liste, Condition)
End Sub
Private Function sub2(Liste As Collection, ByVal Condition As String) Dim r As New ScriptControl r.Language = "vbscript" Set regEx = New RegExp regEx.Pattern = "(Liste\(i\))(\.\S+)"
For i = 1 To Liste.Count sub2 = regEx.Replace(Condition, CallByName(Liste(i), "$2", VbGet)) If r.Eval(sub2) Then MsgBox sub2 End If Next i
End Function
|
|
lundi 10 juillet 2006 à 11:37:06 |
Re : bazar de mélange de collection, propriétés, conditions en vba-excel

larsene67
|
bon, je trouve pas comment modifier ma question, alors je reposte le code, plus prooche de ce que je veux faire:
Public Liste As New Collection Public regEx As New VBScript_RegExp_55.RegExp 'New RegExp
Sub sub1() Dim machin As New Classe1
machin.nom = "CHRIST" machin.prénom = "Jesus" machin.age = 33 Liste.Add machin Set machin = Nothing
machin.nom = "LUCAS" machin.prénom = "GEORGES" machin.age = 50 Liste.Add machin Set machin = Nothing
machin.nom = "LUCAS" machin.prénom = "Gérard" machin.age = 50 Liste.Add machin Set machin = Nothing
machin.nom = "DES BATIGNOLES" machin.prénom = "Marie-thérese" machin.age = 75 Liste.Add machin Set machin = Nothing
machin.nom = "DES BATIGNOLES" machin.prénom = "Marie-thérese" machin.age = 73 Liste.Add machin Set machin = Nothing
machin.nom = "DES BATIGNOLES" machin.prénom = "Marie-thérese" machin.age = 120 Liste.Add machin Set machin = Nothing
'si la ligne precedente a le meme nom, et l'age est inférieur à 100ans, on la vire Condition = "Liste(j).nom = Liste(i).nom Or Liste(i).age > " & Chr(34) & "100" & Chr(34) sub2 Liste, Condition
Debug.Print Liste.Count End Sub
Private Function sub2(Liste As Collection, ByVal Condition As String) Dim r As New ScriptControl r.Language = "vbscript" Set regEx = New RegExp regEx.Pattern = "(Liste\(i\))(\.\S+)"
Do While i <= Liste.Count For j = 1 To i - 1 Condition2 = regEx.Replace(Condition, CallByName("$1" & "($2)", "$3", VbGet)) If r.Eval(Condition2) Then Liste.Remove (i) i = i - 1 Exit For End If Next j i = i + 1 Loop
End Function
|
|
lundi 10 juillet 2006 à 11:56:18 |
Re : bazar de mélange de collection, propriétés, conditions en vba-excel

larsene67
|
Encore un essai qui ne marche toujours pas :(:( :
Private Function sub2(Liste As Collection, ByVal Condition As String) Dim r As New ScriptControl r.Language = "vbscript" Set regEx = New RegExp Set Regex2 = New RegExp regEx.Pattern = "(Liste)(\([ij]\))(\.)(\S+)" Regex2.Pattern = regEx.Pattern
Do While i <= Liste.Count For j = 1 To i - 1 For Each tmp In regEx.Execute(Condition) tmp2 = Regex2.Replace(tmp, "$1$2") tmp3 = Regex2.Replace(tmp, "$4") tmp4 = Regex2.Replace(Condition, CallByName(tmp2, tmp3, VbGet)) Condition = regEx.Replace(Condition, tmp4, VbGet) Next tmp If r.Eval(Condition) Then Liste.Remove (i) i = i - 1 Exit For End If Next j i = i + 1 Loop
End Function
|
|
Cette discussion est classée dans : liste, age, machin, condition, ans
Répondre à ce message
Sujets en rapport avec ce message
Base de donnée : j'ai un problème [ par LEAU ]
Bonjour, j'ai un problème j'ai une base de donnée simple, avec trois colones : nom, prénom, et ageJe voudrais pouvoir créer une liste de choix qui se
condition sur zone de liste modifiable [ par d_zyl ]
Salut, voila mon souci : dans un formulaire, j'ai deux zones de liste modifiable . la première donne les choix A,B et C et la deuxième donne les choix
donner une valeur par défaut à une liste déroulante ne contenant pas cette valeur [ par nanach ]
bonjour tout le monde ^^ petit souci sur vba (youpie) que je vous explque : ) j'ai une liste déroulante qui me fournit des ages quinquénale (0-5-10
trier une collection vba-excel [ par larsene67 ]
bon, on va essayer une approche différente de mon problème: soit la collection suivante:(Dans class1:)Public nom, prénom, age(dans module1:)<font face
Affichage liste sous condition [ par horazon ]
Bonjour à tous je suis débutant sous excel et VB pourtant il faudrait que je fasse un fichier regroupant pas mal d'informations.Je voudrais si possibl
condition sur valeur par défaut d'une liste déroulante [ par chamttt ]
Bonjour à tous, J'ai un soucis avec une liste déroulante, je souhaite faire apparaitre un msgbox en cas de non saisi d'une donnée dans la liste par
Passer une condition à une sub comme paramètre string [ par larsene67 ]
Bonjour, J'ai un programme qui repete regulierement une boucle conditionelle mais avec une condition différente. Afin de simplifier celui-ci, j'ai vou
Condition pour retour à la ligne introuvable ... [ par Pinzut77 ]
Bonjour,Voici une macro qui permet de mettre info de contact de ma colonne sur une ligne mais voila je ne trouve pas de condition pour aller à la lign
Remplir Liste [ par tedparker ]
Bonjour,J'ai récupéré une liste de fichiers avec leur chemin courant et j'aimerai ensuite remplir une sorte de zone de liste avec ces fichiers et perm
recuperer une propriété d'un élément de collection au travers d'un paramêtre de fonction (VBA-excel) [ par larsene67 ]
Re-bonjour, voici une autre question à un de mes soucis.Alors l'exemple n'est pas très clair quand à l'utilité, mais j'ai simplifié pour la question.C
Livres en rapport
|
Derniers Blogs
TECHDAYS PARIS 2010 : LA BI DANS SHAREPOINT 2010TECHDAYS PARIS 2010 : LA BI DANS SHAREPOINT 2010 par ROMELARD Fabrice
Animé par: Vincent Bellet et Baptiste Giraudier La BI dans SharePoint 2010, Les nouveaux services d'application dans SP2010 et SQL Server Reporting services 2008 R2. La BI dans SharePoint est généralisée pour tous afin de permettre à tous les coll...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice TECHDAYS PARIS 2010 : PLAN DE MIGRATION VERS SHAREPOINT 2010TECHDAYS PARIS 2010 : PLAN DE MIGRATION VERS SHAREPOINT 2010 par ROMELARD Fabrice
Animé par: Arnault Nouvel et Antoine Dongois Le processus à prendre : Apprendre (découvrir la plateforme) Préparer (documenter l'historique et choisir la méthode de MAJ) Test (Test de MAJ) Implémenter (Effectuer la MAJ) Valid...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice TECHDAYS PARIS 2010 : LA PLEINIèRE DU SECOND JOURTECHDAYS PARIS 2010 : LA PLEINIèRE DU SECOND JOUR par ROMELARD Fabrice
Après un retour sur l'histoire des TechDays de Paris et le fait que ce soit le plus gros event MS au monde (du fait de sa gratuité), le président de MS France (Eric Boustoullier) a fait une présentation de la vision Microsoft pour les années à venir...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice
Logiciels
DB-MAIN (9.1.0)DB-MAIN (9.1.0)DB-MAIN is a data-modeling and data-architecture tool. It is designed to help developers and anal... Cliquez pour télécharger DB-MAIN Xilisoft DPG Convertisseur (5.1.37.0120)XILISOFT DPG CONVERTISSEUR (5.1.37.0120)Xilisoft DPG Convertisseur offre aux fans de Nintendo DS une bonne solution leur permettant de dé... Cliquez pour télécharger Xilisoft DPG Convertisseur GraphicsGale (2.01.01)GRAPHICSGALE (2.01.01)GraphicsGale est un logiciel de PixelArt avec de nombreuse fonctionnalités permettant de réalisé ... Cliquez pour télécharger GraphicsGale Architecte 3D (Platinum 2010)ARCHITECTE 3D (PLATINUM 2010)Architecte 3D Platinium vous permet de concevoir facilement les plans votre future maison, de l'é... Cliquez pour télécharger Architecte 3D TeamViewer 5 (TeamViewer 5)TEAMVIEWER 5 (TEAMVIEWER 5)Dépanner un ami,expliquer une manipulation devient un jeu d'enfant.
Prise en main d'un autre ord... Cliquez pour télécharger TeamViewer 5
|