Bonsoir à tous,
Voici mon problème.
J'ai deux fichiers xls par région: "*Attendance.xlsx" et "*Seminar.xlsx".
J'ai un fichier "Total.xlsx" dans lequel je dois multiplier des valeurs issues de "*Attendance.xlsx" par des valeurs provenant de "*Seminar.xlsx".
Je dois utiliser des constantes prédefinies pour faire reference à ces deux classeurs comme ils ont des préfixes différents selon les régions auxquelles ils appartiennent.
Est ce que quelqu'un peut me dire pourquoi ce code ne marche pas s'il vous plait?
Je sais qu'il y a un moyen plus facile si je voulais juste obtenir la valeur que je veux comme par ce code qui marche bien:
Mais j'ai vraiment besoin que quand je clique sur la cellule, je peux voir la formule s'afficher sur la barre des formules mais pas seulement la valeur.
Merci d'avance pour toute aide que vous pourriez apporter.
Voici mon problème.
J'ai deux fichiers xls par région: "*Attendance.xlsx" et "*Seminar.xlsx".
J'ai un fichier "Total.xlsx" dans lequel je dois multiplier des valeurs issues de "*Attendance.xlsx" par des valeurs provenant de "*Seminar.xlsx".
Je dois utiliser des constantes prédefinies pour faire reference à ces deux classeurs comme ils ont des préfixes différents selon les régions auxquelles ils appartiennent.
Est ce que quelqu'un peut me dire pourquoi ce code ne marche pas s'il vous plait?
Code:
Sub Essai9()
With Application: .ScreenUpdating = False: .Calculation = xlAutomatic: .EnableEvents = False: End With
ChDir ActiveWorkbook.path
a = Dir("*Attendance.xlsx")
b = Dir("*Seminar.xlsx")
Dim currentWb As Workbook
Set currentWb = ThisWorkbook
Dim wb1 As Workbook
Set wb1 = Workbooks.Open(Filename:=a)
Dim wb2 As Workbook
Set wb2 = Workbooks.Open(Filename:=b)
Dim openWs1 As Worksheet
Set openWs1 = wb1.Sheets(1)
Dim openWs2 As Worksheet
Set openWs2 = wb2.Sheets(1)
'La partie qui ne marche pas
With currentWb.Sheets(1)
.Range("B2").FormulaR1C1 = _
"='" & openWs1 & "'!R2C2*'" & openWs2 & "'!R2C1"
End With
End Sub
Je sais qu'il y a un moyen plus facile si je voulais juste obtenir la valeur que je veux comme par ce code qui marche bien:
Code:
currentWb.Sheets(1).Range("B2").Value = openWs1.Range("B2").Value * openWs2.Range("A2").Value
Mais j'ai vraiment besoin que quand je clique sur la cellule, je peux voir la formule s'afficher sur la barre des formules mais pas seulement la valeur.
Merci d'avance pour toute aide que vous pourriez apporter.