Debutante en VBA

Natacha -  
lermite222 Messages postés 8724 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

Je suis debutante en VBA. Je voudrais copier sur une feuille des donnees specifique dans des cellules pour un code donne. Je suis entrain de m'entrainer en mettant value =0 pour else. Cela ne marche pas et j'ai du mal a nommer mes cellules. Est ce que quelqu'un pourrait m'aider?

Sub BEL01()
If Workbooks("IRF Follow up").Worksheets("IRF").Range("C93").Value = "8BEL01" Then
Worksheets("Invoicing Addresses").Range("C1.C5").Copy
Worksheets("IRF").Range("C17.C21").Paste
Else
Worksheets("IRF").Range("C17.C21").Value = 0
End If
End Sub

6 réponses

lermite222 Messages postés 8724 Date d'inscription   Statut Contributeur Dernière intervention   1 191
 
Bonjour,
Essaye avec..
Sub BEL01()
Dim Cel As Range
    If Workbooks("IRF Follow up").Worksheets("IRF").Range("C93").Value = "8BEL01" Then
        Worksheets("Invoicing Addresses").Range("C1.C5").Copy
        Worksheets("IRF").Range("C17.C21").Paste
    Else
        For Each Cel In Worksheets("IRF").Range("C17.C21")
            Cel.Value = 0
        Next Cel
    End If
End Sub

A+
PS: Je suppose que tu emploi une version anglaise d'excel, en version française le séparateur de plage c'est :
Range("C17:C21")
0
Natacha
 
Cela ne fonctionne pas il me mette erreur 9 sur la premiere ligne. Les noms des books sheets etc... sont comment je les ai nomme dans ce workbook.

C'est comme cela qu'il faut faire? Autrement?
0
lermite222 Messages postés 8724 Date d'inscription   Statut Contributeur Dernière intervention   1 191
 
La 1ère ligne est conforme pour la syntaxe.
Faire un copier/Coller du nom de tes onglets, un espace est vite ajouter/oublier surtout dans les noms d'onglet.
Tu dis
0
Natacha
 
Non cela ne fonctionne pas. Sinon on est d'accord que par workbook c'est le nom de mon fichier. Par ce que je ne vois pas autre chose...
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
BloodyAngel Messages postés 1482 Date d'inscription   Statut Contributeur Dernière intervention   403
 
Hello
je te copie-colle vite un bout de code que j'ai écris y'a longtemps pour une applic eXcel :


With Worksheets(1)
.Range(.[B5], .[B5].End(xlDown)).Copy Worksheets(2).[A3]
End With

Le numéro x dans Worksheets(x) correspond à la POSITION de la feuille dans la liste des onglets.

Tchuss
0
lermite222 Messages postés 8724 Date d'inscription   Statut Contributeur Dernière intervention   1 191
 
WorkBook c'est le nom du classeur, WorkSheet le nom de la feuille
Tu a 2 classeurs ?
0