Se connecter / S'enregistrer
Votre question

VBA excel probleme programmation

Tags :
  • coller
  • Programmation
Dernière réponse : dans Programmation
22 Mars 2009 11:11:21

Bonjour,
j'ai un fichier contenant 3 onglets. 1er onglet appelé "TTC" comprend comme informations : code client, num facture, montant TTC de la facture. Le 2eme onglet nommé "TVA" comprend les même information sauf qu'au lieu du TTC nous avons le montant de la TVA.
Mon 3eme onglet nommé "Recap" doit venir copier toutes les informations contenues dans l'onglet TTC et faire venir le montant de la TVA pour les factures ayant de la TVA.

Merci de m'aider car je n'arrive pas a coller les informations.

Autres pages sur : vba excel probleme programmation

a b L Programmation
22 Mars 2009 11:14:21

tonRange.Copy, tonRange.PasteSpecial
22 Mars 2009 11:18:04

Je ne m'y connais pas trop en VBA étant débutante mais on m'a d'abord conseiller de tester dans mon onglet TTC le nombre de ligne non vide avec un boléen puis copier ma cellule dans une variable et la coller dans l'onglet récap. Pour coller les valeurs de ma TVA je pensais utiliser une fonction somme.si mais je ne sais pas du tout comment écrire ce code. :sweat: 
Contenus similaires
22 Mars 2009 15:01:33

CRicky a dit :
tonRange.Copy, tonRange.PasteSpecial


merci apres avoir appliqué tes conseils, je suis arrivé a une macro qui fonctionne. Sauf que j'ai fais une formule somme.si et que là cela ne fonctionne pas. Je voudrais que la formule se fasse dans toute les lignes ou j'ai copié des valeurs. Pouvez vous m'aider?

voici la copie de mon code
Sub test()
Dim fin As Boolean
Dim i, B As Long

Worksheets("ensemble").Activate
i = 3
B = 3

While fin = False
If Worksheets("facture").Range("A" & i).Value <> "" Then
Worksheets("facture").Range("A" & i).Copy
Range("A" & B).PasteSpecial
Worksheets("facture").Range("B" & i).Copy
Range("B" & B).PasteSpecial
Worksheets("facture").Range("F" & i).Copy
Range("C" & B).PasteSpecial
Worksheets("facture").Range("E" & i).Copy
Range("F" & B).PasteSpecial
Range("E" & B).Formula = "=sumif('tva'!B:B,B&B,'tva'!G:G)"



Else: fin = True

End If
i = i + 1
B = B + 1

Wend
End Sub

C'est au niveau de B & B que cela ne fonctionne pas
a b L Programmation
22 Mars 2009 17:55:45

Regarde dans la formule générée si c'est bon.
Sinon, B&B, c'est censé faire quoi?
27 Mars 2009 22:33:36

Bonjour à tous,

Si j'ai bien compris, il s'agit juste de recopier des valeurs contenues dans 2 onglets dans un 3ème ?
Il n'y a pas vraiment besoin de faire du VBA pour ça.
Dans l'onglet recap on rentre dans les cellules des formules qui référencent les valeurs que l'on veut utiliser (ou juste voir apparaitre)
du style "=TVA!F11".
L'intérêt de faire comme ça, c'est qu'une modification de la cellule source est immédiatement reportée dans celles qui la référence alors que la macro, il faut la déclencher pour effectuer la copie.
Tom's guide dans le monde
  • Allemagne
  • Italie
  • Irlande
  • Royaume Uni
  • Etats Unis
Suivre Tom's Guide
Inscrivez-vous à la Newsletter
  • ajouter à twitter
  • ajouter à facebook
  • ajouter un flux RSS