[Déplacé VB6 --> VBA] Problème dans formule

Signaler
Messages postés
29
Date d'inscription
mardi 27 avril 2010
Statut
Membre
Dernière intervention
8 décembre 2014
-
Messages postés
29
Date d'inscription
mardi 27 avril 2010
Statut
Membre
Dernière intervention
8 décembre 2014
-
Bonjour,
J'ai un problème mais je ne comprends pas d'où il provient.
Pouvez vous m'aider ?

Voici une copie de mon code :

Dim NbMarqueurs As Integer, NbCapteurs As Integer
Dim IMark As Integer, ICapt As Integer

Sub Macro1()
'
' Macro1 Macro
' Macro enregistrée le 07/05/2010

Dim CellD As String, ICellD As Integer                          ' Cellule de destination
Dim CellS As String, ICellS As Integer, IcellS0 As Integer      ' Cellule source
Dim temp As String
'
' Nombre de marqueurs
'Open "c:\temp\trace.txt" For Output As #1
    Sheets("Données Brutes").Select
    Range("C152").Select
    ActiveCell.FormulaR1C1 = "=MAX(R[-145]C:R[-3]C)/2"
    NbMarqueurs = ActiveCell.Value
' Nombre de capteurs
    Range("C153").Select
    ActiveCell.FormulaR1C1 = "=COUNT(R[-146]C:R[-4]C)/R[-1]C/2"
    NbCapteurs = ActiveCell.Value
' Lecture des données
    Sheets("Rotor").Select
' Vitesses
    Range("D12").Select  ' Positionnement sur la première ligne
    ICellD 11: IcellS0 6
    For IMark = 1 To NbMarqueurs
        ICellD ICellD + 1: CellD "D" & ICellD
        ICellS IcellS0 + IMark: CellS "F" & ICellS
        For ICapt = 1 To NbCapteurs
            Range(CellD).Select
'            Print #1, CellD, CellS
'            ActiveCell.FormulaR1C1 = "='Données Brutes'!R[2]C[2]"
            Debug.Print "='Données Brutes'!" & CellS
            temp = "='Données Brutes'!" & CellS
            ActiveCell.FormulaR1C1 = temp
            ICellD ICellD + 1: CellD "D" & ICellD
            ICellS ICellS + NbCapteurs + 1: CellS "F" & ICellS
        Next ICapt
    Next IMark
'Close #1
  
End Sub


Et la partie qui m'intéresse donc est :
 Debug.Print "='Données Brutes'!" & CellS
            temp = "='Données Brutes'!" & CellS
            ActiveCell.FormulaR1C1 = temp


Merci d'avance...

2 réponses

Messages postés
14008
Date d'inscription
samedi 29 décembre 2001
Statut
Modérateur
Dernière intervention
28 août 2015
75
Salut
Et quel est ce problème ?
Une erreur ? Laquelle ? Sur quelle ligne ?

Cells est un mot clé du langage VBA (d'où l'intérêt de poster dans la bonne catégorie).
Pour tes variables, utilise la notation "à la hongroise", tu seras sûr de ne jamais (ou presque) tomber sur ce genre de problème :
    Dim sCellD As String
    Dim sCellS As String
    Dim stemp As String

's' pour String (aussi str)
'i' pour Integer (int)
'l' pour Long (lng)
'b' pour Boolean
'o' pour Object (obj)
'a' pour Array = tableaux(arr)
'dte' pour Date

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
Messages postés
29
Date d'inscription
mardi 27 avril 2010
Statut
Membre
Dernière intervention
8 décembre 2014

Quand ma formule se retrouve dans mon tableau elle n'est pas de la forme :
='Données Brutes'!F7


mais plutôt de la forme :
='Données Brutes'!'F7'


Et je ne comprend pas pourquoi ...