Bonjour,

Après avoir cherché, peut être mal, des heures durant sur plusieurs forums d'aide, je viens vers vous pour m'aider à trouver mes problemes de script VBA.

Excusez sans doute ma façon d'expliquer laborieuse. Je suis en stage après une reconversion professionnelle. J'ai déjà appris certains langages de programmation, mais je suis perdue avec VBA

J'ai un tableau de données dans lequel j'ai fait une recherche multicritere des nouvelles entreprises.

Je voudrais réaliser une macro qui à chaque fois que le critère nouvelle entreprise apparaisse dans la colonne (CQ), aille chercher le nom de cette entreprise dans une autre colonne. Puis copie le nom de toutes les entreprises trouvées sur une nouvelle feuille.

Il y a sans doute des tonnes d'erreur dans ma macro, mais déjà première question : comment copier coller juste la chaine de caractères d'une cellule.

Petite info: le fichier a été créé en version japonaise.

Voici ma macro:


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
Sub New_customers()
 
'Research of new customers
 
Dim New_customer As String 'Declare la variable Nouveau client
Dim Ligne As Range 'Declare la variable ligne
Dim Limite As Integer 'Declare la variable limite
Dim Liste As Integer 'Declare la variable liste
Limite = 100
Liste = 1
 
Sheets("JD NET 0718").Select
Range("CQ3").Select
While ActiveCell.Value <> "New_customer" 'recherche la valeur dans la cellule active
        ActiveCell.Offset(1, 0).Select 'decale la ligne d'1 ligne vers le bas
 
 
        If ActiveCell.Value = "New_customer" Then 'si la cellule contient la valeur New_customer
        Set Ligne = Rows(ActiveCell.Row) 'selectionne la ligne correspondante
        New_customer = Range("C", Ligne).Copy 'copie la valeur de la colonne C dans la ligne correspondante
 
 
        Sheets("Feuil1").Select
 
       Range("B", Liste).Select 'selection de la cellule sur la nouvelle feuille a ecrire
        Newcustomer.Paste
 
 
        Liste = Liste + 1
 
        End If
 
        Limite = Limite - 1
 
Wend