Bonjour à tous
J’ai une feuille Excel avec en première colonne des noms d’entreprises et en deuxième des secteurs d’activités séparés par des virgules. Et je voudrais obtenir une feuille a deux colonnes comme ci-dessous:
Nomd’entreprise1 1° secteur d’activité
Nomd’entreprise1 2° secteur d’activité
Nomd’entreprise2 1° secteur d’activité
J'ai donc écrit le programe à la fin de mon post en VBA, mais j'ai un problème avec la fonction Dim. Quand une entreprise est présent sur 3 secteurs comme si dessous :
Entreprise1, Secteur1,secteur2,secteur3
J’obtiens ce résultat :
Entreprise1 Secteur1
Entreprise1 secteur2,secteur3
Entreprise1 secteur3
J’ai utilisé la fonction MsgBox pour afficher les valeurs « dd » et « ff » avant d’appliquer la fonction Mid. Et les valeurs sont correctes Mid devrais sortir « secteur2 » à la 3° ligne. Est-ce que vous savez d’où peux venir le problème ?
Dim virgule As String * 1
Dim aa As Long
Dim bb As Long
Dim zz As Long
Dim cc As Byte
Dim dd As Long
Dim ee As Long
virgule = ","
aa = 0
bb = 0
zz = 2
Call adkomma2
‘Sous-routine ajoutant une virgule à la fin de chaque case.
Do Until Cells(zz, 2) = 0
Branchen = Cells(zz, 2)
cc = Len(Branchen)
Do Until cc = aa
bb = WorksheetFunction.Search(virgule, Branchen, aa + 1)
dd = aa + 1
ee = bb - 1
Branche = Mid(Branchen, dd, ee)
Cells(zz, 2).Activate
Rows(zz).Select
Selection.Insert Shift:=xlDown
zz = zz + 1
Cells(zz, 2) = Branchen
Cells(zz - 1, 2) = Branche
Branchen = Cells(zz, 1)
Cells(zz - 1, 1) = Branchen
Branchen = Cells(zz, 2)
aa = bb
Loop
aa = 0
bb = 0
Rows(zz).Select
Selection.Delete Shift:=xlUp
Loop
End Sub
VBA: problème avec la fonction Dim
4 messages
• Page 1 sur 1
- FMad
- Nouveau venu
- Messages: 6
- Inscription: 13 Sep 2011, 09:14
- Version Excel: 2003
Re: VBA: problème avec la fonction Dim
Salut,
Si tu n'obtiens pas de réponse, je pense que c'est parce que ton code inscrit ainsi ne nous dit pas grand chose.
A ta place, je placerais mon fichier sur le site, si possible au format xls. (et si nécessaire, en enlevant les données confidentielles).
Et alors là, demande immédiatement une augmentation de la capacité à ton fournisseur de messagerie, car tu vas voir arriver les réponses
A te relire.
Si tu n'obtiens pas de réponse, je pense que c'est parce que ton code inscrit ainsi ne nous dit pas grand chose.
A ta place, je placerais mon fichier sur le site, si possible au format xls. (et si nécessaire, en enlevant les données confidentielles).
Et alors là, demande immédiatement une augmentation de la capacité à ton fournisseur de messagerie, car tu vas voir arriver les réponses
A te relire.
Yvouille
-

Yvouille - Membre impliqué
- Messages: 2077
- Inscription: 06 Avr 2007, 07:03
- Localisation: CH - Valais de cœur
- Version Excel: 2003, 2007, 2010 All.
Re: VBA: problème avec la fonction Dim
Bonjour Yvouille,
En l'absence de données complémentaires, voici un fichier qui vous fournira peut-être une piste.
En l'absence de données complémentaires, voici un fichier qui vous fournira peut-être une piste.
- Fichiers joints
-
Problème avec la fonction Dim V1.xls- (50.5 Kio) Téléchargé 8 fois
-

MaPoire - Membre habitué
- Messages: 81
- Inscription: 17 Sep 2011, 19:46
- Version Excel: 2010
Re: VBA: problème avec la fonction Dim
Bonjour,
Attention Dim n'est pas une fonction mais un instruction pour déclare une variable qui permettra d'attribuer un "espace" de stockage mémoire à cette variable pendant l'exécution du code.
Par rapport à ton fichier une première idée serait d'utiliser la fonctionne Données / Convertir
- Sélectionne B2 à B8
- Menu Données / convertir
- Clique le case à cocher "délimité" puis clique sur "suivant"
- Coche "tabulation" et "virgule" puis clique sur "suivant" et sur "fin"
Ensuite adapter le code pour faire ce que tu veux
Amicalement
Attention Dim n'est pas une fonction mais un instruction pour déclare une variable qui permettra d'attribuer un "espace" de stockage mémoire à cette variable pendant l'exécution du code.
Par rapport à ton fichier une première idée serait d'utiliser la fonctionne Données / Convertir
- Sélectionne B2 à B8
- Menu Données / convertir
- Clique le case à cocher "délimité" puis clique sur "suivant"
- Coche "tabulation" et "virgule" puis clique sur "suivant" et sur "fin"
Ensuite adapter le code pour faire ce que tu veux
Amicalement
@+ Dan 
-

Dan - Modérateur
- Messages: 2398
- Inscription: 27 Avr 2007, 15:31
- Localisation: Liège - Belgique
- Version Excel: 2010, 2003, 2000, Mac 2004
4 messages
• Page 1 sur 1
-
- Sujets similaires
- Réponses
- Vus
- Dernier message
-
- VBA Syntaxe et Dim
par dubois » 07 Oct 2009, 13:15 - 2 Réponses
- 160 Vus
- Dernier message par dubois

07 Oct 2009, 14:25
- VBA Syntaxe et Dim
-
- VBA Conseil sur déclaration Dim
1, 2par dubois » 28 Oct 2008, 15:24 - 13 Réponses
- 909 Vus
- Dernier message par dubois

29 Oct 2008, 14:37
- VBA Conseil sur déclaration Dim
-
- problème avec Fonction Si avec plusieurs condition
par lacombine » 08 Nov 2010, 16:41 - 2 Réponses
- 203 Vus
- Dernier message par lacombine

08 Nov 2010, 17:21
- problème avec Fonction Si avec plusieurs condition
-
- [Resolu] Problème fonction VBA invalide sous Excel
par Toumimi » 03 Oct 2008, 11:56 - 3 Réponses
- 538 Vus
- Dernier message par Toumimi

06 Oct 2008, 10:05
- [Resolu] Problème fonction VBA invalide sous Excel
-
- probleme avec fonction SI
par zazar » 10 Fév 2010, 13:56 - 2 Réponses
- 98 Vus
- Dernier message par zazar

10 Fév 2010, 14:15
- probleme avec fonction SI
-
- Problème avec fonction If then else
par darknounou » 05 Août 2011, 11:13
- 4 Réponses
- 157 Vus
- Dernier message par darknounou

05 Août 2011, 13:27
- Problème avec fonction If then else
Utilisateurs en ligne
Utilisateurs parcourant ce forum: Bing [Bot], CB60, galopin01, Google [Bot], Google Adsense [Bot] et 40 invités