Spécialiste Mac-Excel-VBA

  • Initiateur de la discussion claudy
  • Date de début
C

claudy

Guest
Bonjour, à tous…
Ci-dessous, une macro que Thierry m'a confectionné…
Ça marche super bien sur mon bon vieux Pentium 2 et office 2000
Par contre sur mon Mac G4, Office X (à mon travail), ça coince!
Ce n'est pas la première fois que j'ai des prob avec Excel et surtout VBA
Pourrait-on m'expliquer s'il vous plait?
Y a t il un spécialiste, dans ce forum, Mac-Excel-VBA?

La macro ci-dessous, fonctionne sur Mac, si je retire les points avant Range(),
Mais c'est très très très lent!
A+
Claudy

Sub TestFraisGeneraux()
Dim PlageTotale As Range, Cel As Range, Dest As Range
Dim FG1 As Range, FG2 As Range, FG3 As Range
With Worksheets("Feuil1")
Set PlageTotale = .Range("B2", .Range("F1").End(xlDown))
Set FG1 = .Range("H3")
Set FG2 = .Range("L3")
Set FG3 = .Range("P3")
End With

Application.ScreenUpdating = False
For Each Cel In PlageTotale
Select Case Cel.Value
Case Range("I2").Value 'Frais généraux1
Set Dest = FG1
Set FG1 = FG1.Offset(1, 0)
Case Range("M2").Value 'Frais généraux2
Set Dest = FG2
Set FG2 = FG2.Offset(1, 0)
Case Range("Q2").Value 'Frais généraux3
Set Dest = FG3
Set FG3 = FG3.Offset(1, 0)
End Select

If Not Dest Is Nothing Then
With Dest
.Value = Cel.Offset(0, 3).Value
.Offset(0, 1).Value = Cel.Offset(0, 1).Value
.Offset(0, 2).Value = Cel.Offset(0, 2).Value
End With
Set Dest = Nothing
End If
Next Cel
Application.ScreenUpdating = True
End Sub
 
@

@+Thierry

Guest
Salut Claudy et le forum

C'est l'éternel problème des Macs... Et c'est mon éternel problème pour voir, sans avoir de Mac, ce qui cloche. Ptet que Jean Marie pourrait te donner une réponse car là je ne sais que dire.

Essaie toujours en précisant la Sheets("Feuil1") dans tous les Set au lieu de le faire avec With / end with (ce qui sera tout de même plus long) mais bon... Avec ces Macs...

Désolé de ne pouvoir t'être d'une plus grande utilité.
@+Thierry
 
T

Ti

Guest
Je reconnais là une macro que j'ai écrite effectivement, Claudy, tu peux supprimer le "with"...end with
et placer en début de macro : Worksheets("Feuille1").Activate

Ensuite tu enlèves tous les points qui posent problème, mais bon, sous Mac on est dans le domaine de l'inconnu et du problème potentiel...
 
B

Benja

Guest
Bonjour,
J'ai un probleme avec Excel, je m'explique.

Dans access j'ai cree un bouton qui mouvre un fichier excel.
Jusque là rien d'anormal.
Mais quand je ferme le fichier excel, il ce reouvre tout de suite apres.
Comment faire pour qu'il ne ce reouvre pas? je pense que c un probleme de macro, mais je c pas c qu'il faut faire.

Merci d'avance

Benja
 

Discussions similaires

Réponses
4
Affichages
419
Réponses
2
Affichages
295

Statistiques des forums

Discussions
314 653
Messages
2 111 589
Membres
111 208
dernier inscrit
estalavista