Copier variable dans une autre fichier

Bonjour à tous,

Dans une macro, je donne une valeur à une variable, Je désire copier cette variable dans un autre fichier ouvert mais non actif lequel a une feuille seulement. Je ne veux pas l'activer si c'est possible.

Je souhaite à tous et à toutes une BONNE ANNÉE et que vos souhaits se réalisent.

Claire

Bonjour,

Tout dépend de l'ensemble de tes macros ...

Cette variable que tu veux disponible partout ... est-elle déclarée en Public ...???

Voici la macro en question

Sub essai()

Dim nocarte As String, nom As String, adr1 As String, adr2 As String, tel As String, montant As String
Dim i As Integer, ii As Integer, nomfichier As String, nomfeuille As String

Workbooks("Caisse de Noël.xlsm").Activate
nomficher = ActiveWorkbook.Name
nomfeuille = ActiveSheet.Name
For i = 2 To 119
nocarte = Range("A" & i).Value
nom = Range("B" & i).Value
adr1 = Range("f" & i).Value
adr2 = Range("g" & i).Value
tel = Range("h" & i).Value
montant = Range("i" & i).Value

Workbooks("Inscription caisse de noel 2014.xls").Activate
For ii = 1 To 1000 Step 11
Range("h" & ii + 2).Value = nocarte
Range("c" & ii + 4).Value = nom
Range("c" & ii + 4).Select

Range(ActiveCell.Address).Offset(1, 0).Value = adr1
Range(ActiveCell.Address).Offset(2, 0).Value = adr2
Range(ActiveCell.Address).Offset(3, 0).Value = tel

Next
Next
End Sub

C'est le fichier "Inscription..." que je ne désire pas activer.

Merci

Claire

Claire,

Juste une question, ta macro pourrait-elle ouvrir le second fichier ...???


Re,

Ci-dessous un code à tester ...

Sub Essai()
Dim nocarte As String, nom As String, adr1 As String, adr2 As String, tel As String, montant As String
Dim i As Integer, ii As Integer, nomfichier As String, nomfeuille As String
Dim w1 As Workbook
Dim w2 As Workbook
Dim swk As String

' Modifications temporaires pour accélérer la macro
    Application.ScreenUpdating = False
    Application.Calculation = xlCalculationManual
    Application.DisplayAlerts = False

    Set w1 = ActiveWorkbook       ' c'est-à-dire Workbooks("Caisse de Noël.xlsm")
    nomfichier = w1.Name
    nomfeuille = ActiveSheet.Name

    ' définir la chaine pour le second fichier
    ' avec la supposition que le second fichier se trouve dans le même répertoire que le fichier w1

    swk = w1.Path & "\" & "Inscription caisse de noel 2014.xls"

    ' Ouvrir le second fichier
    Workbooks.Open Filename:=swk
    Set w2 = ActiveWorkbook

  For i = 2 To 119
    With w1
      nocarte = .Range("A" & i).Value
      nom = .Range("B" & i).Value
      adr1 = .Range("f" & i).Value
      adr2 = .Range("g" & i).Value
      tel = .Range("h" & i).Value
      montant = .Range("i" & i).Value
    End With
      For ii = 1 To 1000 Step 11
        With w2
          .Range("h" & ii + 2).Value = nocarte
          .Range("c" & ii + 4).Value = nom
          .Range("c" & ii + 4).Offset(1, 0).Value = adr1
          .Range("c" & ii + 4).Offset(2, 0).Value = adr2
          .Range("c" & ii + 4).Offset(3, 0).Value = tel
        End With
      Next ii
  Next i

' Retour aux conditions initiales
    Application.ScreenUpdating = True
    Application.Calculation = xlCalculationAutomatic
    Application.DisplayAlerts = True

End Sub

Le fichier est déjà ouvert par la macro

ClaireD a écrit :

Le fichier est déjà ouvert par la macro

Re,

Alors il ne faut pas hésiter ... à adapter le code que je te viens de t'envoyer avec les deux variables w1 et w2 ...

Plus besoin de faire Activate ou Select ... çà devient ... piece of cake ...

Merci James007

Bonjour,

Merci pour tes remerciements ...

Rechercher des sujets similaires à "copier variable fichier"