Aide macro VBA

Bonjour,

Je voudrais à l'aide d'une taxe modifier des taux.

Je vous explique, par exemple: Si la cellule B15 contient le mot rates, je veux que la taxe modifie mon taux qui se trouve dans ma cellule B16.

J'ai essayé de coder, malheureusement ça ne fonctionne pas:

[code Sub Tax()

Dim nbl As Integer ' variable pour le nombre de colonnes dans le tableau

Dim Tax As Double

Dim i As Integer

Dim j As Integer

nbl = ActiveSheet.UsedRange.Columns.Count

Tax = Range("C11").Value

i = 14

' boucle + test sur les valeurs du tableau

For j = 1 To nbl

If Worksheets("TAP-OUT Rates CHEOR as VPMN").Cells(j, i).Value = "Rates" Then

Worksheets("TAP-OUT Rates CHEOR as VPMN").Cells(j + 1, i).Value = (Worksheets("TAP-OUT Rates CHEOR as VPMN").Cells(j + 1, i).Value * 100) / Tax

End If

Next j

End Sub][/code]

Est-ce que quelqu'un pourrait-il m'aider ?

Merci.

Marion

Bonjour

Joins ton fichier, ce sera plus simple...

Bye !

Bonjour Marion,

Deux petites recommendations ...

1. Joindre le fichier .. cela permet d'aller 1'000 fois plus vite à l'essentiel ...

2. Si tu veux uniquement partager ta macro ... le minimum ... pour les yeux de tout le monde ... les Balises Code ... MERCI

balises code

Bonjour à nouveau,

Voici, ci-joint mon fichier.

Cordialment,

15template.xlsm (106.22 Ko)

J'ai trouvé la solution à mon problème:

 Sub Boucle()
 Dim nbl As Integer ' variable pour le nombre de colonnes dans le tableau
 Dim Tax As Double
 Dim i As Integer
 Dim j As Integer

 nbl = ActiveSheet.UsedRange.Columns.Count
 Tax = Range("C11").Value

 i = 14
  ' boucle + test sur les valeurs du tableau
  For j = 2 To nbl
    If Worksheets("Sheet1").Cells(i, j).Value = "Rate" Then
    Worksheets("Sheet1").Cells(i + 1, j).Value = (Worksheets("Sheet1").Cells(i + 1, j).Value * 100) / Tax
 End If
  Next j
 End Sub
 

Quelqu'un pourrait-il juste m'aider à améliorer cette macro ?

Merci

Marion

Re,

Avant toute chose ... Félicitations ...

Je te trouve très bien que tu aies pu trouver la solution toute seule ...

Maintenant que reproches-tu à ta macro ...?

Bonjour,

Merci beaucoup ! Bein je pense qu'elle pourrait être mieux écrite !

Je suis en train d'essayer de l'améliorer pour boucler sur toutes les lignes mais pour l'instant ce n'est pas ça

Cordialement,

Marion

Bonjour Marion,

Pourrais-tu poster ton fichier avec la dernière version de ta macro ...

Bonjour James,

Oui bien sur veuillez le trouver ci-joint.

Marion

Ce que j'essaie de faire:

 Sub Boucle()
 Dim nbl As Integer, Tax As Double, i As Integer, j As Integer
 ' variable pour le nombre de colonnes dans le tableau
 nbl = Worksheets("Sheet1").UsedRange.Columns.Count 'aller jusqu'à la derniere colonne non vide
 Tax = Range("C11").Value 'La valeur de la taxe se trouve à cette cellule
 i = 14 'Commence à la ligne 14
  ' boucle + test sur les valeurs du tableau
  For j = 2 To nbl
  'For i = 14 To Sheets(1).Range("B65000").End(xlUp).Row
    If Worksheets("Sheet1").Cells(i, j).Value Like "Rate*" Then 'Si la valeur de la cellule est égale au mot Rate
        i = i + 1
        Worksheets("Sheet1").Cells(i, j).Value = (Worksheets("Sheet1").Cells(i, j).Value * 100) / Tax   'Alors il faut enlever la taxe
    End If
    'Next i
  Next j
 End Sub
 
6template.xlsm (119.70 Ko)

Bonjour Marion,

Avant toute chose ... Félicitations pour les progrès accomplis ...

Ci-joint ton fichier légèrement modifié ... avec des commentaires pour que tu comprennes chaque instruction ...

8template.xlsm (127.92 Ko)

Bonjour à nouveau,

Merci

Merci beaucoup, c'est parfait comme ça ! Merci pour les commentaires ça me permet de comprendre

Marion

Bonjour à nouveau,

Merci

Merci beaucoup, c'est parfait comme ça ! Merci pour les commentaires ça me permet de comprendre

Marion

Ravi que cela fonctionne comme tu le voulais ...

Merci pour tes remerciements ..

Avec le nouveau Forum ... ..... ... tu as la possibilité d'indiquer que tu as apprécié l'aide en cliquant sur le coeur ...en bas à droite ...

Rechercher des sujets similaires à "aide macro vba"