Problème macro VBA excel 97

J

jeanclaude57

Guest
Bonjour le forum.

J'ai une macro qui ne passe pas avec excel 97 et c'est celui là que je me sert au boulot.

Y a t'il quelqu'un qui connait ?

Je joins le fichier

Merci. [file name=Jeanclaude57_20050930193815.zip size=23170]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/Jeanclaude57_20050930193815.zip[/file]
 

Pièces jointes

  • Jeanclaude57_20050930193815.zip
    22.6 KB · Affichages: 9

Hellboy

XLDnaute Accro
Bonsoir Jeanclaude57 et Bonsoir Dan

J'ai la même question que Dan.

1- Je me demande si ce n'est pas relié avec les Liens Hyperthexte ?
2- Est-que tu as enregistré ton fichier comme un Classeur xl97 ?

Et en passant, juste pour ton info. a moins que je ne me trompe, tes procédures son identique a une valeur près.

If Cel.Value = 1 Then 'condition : si la cellule Cel = 1

Je me suis permis de te donner une alternative:




' Varable déclaré globale, mais juste pour ce Module Feuille
' Ça évite de la déclarer pour chaque procédure de CommandButton
Private intRef As Integer

Private Sub CommandButton1_Click()
       
Call Clone_Cell(ByVal 1) '    Passage d'un paramétre a la procédure qui étais la même pour tous
End Sub

Private Sub CommandButton2_Click()
       
Call Clone_Cell(ByVal 2)
End Sub

Private Sub CommandButton3_Click()
       
Call Clone_Cell(ByVal 3)
End Sub

Private Sub CommandButton4_Click()
       
Call Clone_Cell(ByVal 0)
End Sub

Private Sub Clone_Cell(ByVal intRef As Integer)
Dim Plage    As Range 'déclare la variable Plage
Dim Dest        As Range 'déclare la variable Dest
Dim Cel        As Range 'deçlare la variable Cel

'définit la variable Plage
With Sheets('SUIVI DEVIS')
       
Set Plage = .Range('F2:F' & .Range('F65536').End(xlUp).Row)
End With

'définit la variable Dest
With Sheets('RELANCE')
       
If .Range('A3').Value = '' Then
               
Set Dest = .Range('A3')
       
Else
               
Set Dest = .Range('A65536').End(xlUp).Offset(1, 0)
       
End If
End With

For Each Cel In Plage 'bopucle sur toutes les cellules Cel de la plage 'Plage'
       
If Cel.Value = intRef Then 'condition : si la cellule Cel
                Cel.EntireRow.Copy Destination:=Dest
'copie la ligne entoère vers la destination Dest
               
Set Dest = Dest.Offset(1, 0) 'redéfinit la variable Dest
       
End If 'fin de la condition
Next Cel 'prochaine cellule de la plage 'Plage'

Dim date_auj As Date 'ligne pour collorer en rouge la police

date_auj = Date
For I = 2 To Range('E65536').End(xlUp).Row
       
If Cells(I, 5).Value < date_auj Then 'premiére ligne 5 eme colonne
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Cells(I, 5).Font.ColorIndex = 3
&nbsp; &nbsp; &nbsp; &nbsp;
End If
Next I

End Sub


a+

Message édité par: Hellboy, à: 30/09/2005 20:55
 
J

jeanclaude57

Guest
Merci de me répondre.

Quand je clique sur un bouton il y a le déboguage qui ce met en place

Par contre je ne me rappel plus quel ligne se met en jaune il faut que j'attende Lundi au boulot.

Pourais-je vous envoyer un message privé pour vous rappeler le post?
 

myDearFriend!

XLDnaute Barbatruc
Bonsoir jeanclaude57, Dan, Hellboy,

Jean-Claude, pour régler ton problème et supprimer cette erreur, il convient simplement de mettre la propriété TakeFocusOnClick de chaque bouton sur 'False'.

Par ailleurs, une fois cette erreur réglée, tu t'apercevras que tu obtiens une autre erreur (Erreur d'exécution 13) pour les 3 premiers boutons. Cette fois, il conviendra de modifier ton code :
date_auj = Date
For
I = 2 To Range('E65536').End(xlUp).Row
Il convient là, de mettre une valeur 3 à la place du 2.

Cordialement,
 

jeanclaude57

XLDnaute Nouveau
Bonjour à tous
Je vais essayer cela lundi au boulot.

Par contre pour améliorer encore ma feuille.Serait t'il possible pour vous car pour moi je sais que ça ne l'est pas :sick:

Que dans ma feuille relance il y ai un bouton mise à jour pour que je puisse changer les données dans cette feuille cliquer sur mise a jour .

Que la mise à jour ce fasse dans la feuille Suivi Devis avec effacement de toutes les lignes dans la feuille Relance.

Merci en tout ca pour tout [file name=Jeanclaude57_20051001194256.zip size=23173]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/Jeanclaude57_20051001194256.zip[/file]
 

Pièces jointes

  • Jeanclaude57_20051001194256.zip
    22.6 KB · Affichages: 9

jeanclaude57

XLDnaute Nouveau
Je joins le fichier modifié par Hellboy c'est vrai qu'il est beaucoup plus simple .

Vous êtes tombé dedans quand vous êtiez petit??? :) [file name=Jeanclaude57_20051001195812.zip size=21752]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/Jeanclaude57_20051001195812.zip[/file]
 

Pièces jointes

  • Jeanclaude57_20051001195812.zip
    21.2 KB · Affichages: 10

Discussions similaires

Membres actuellement en ligne

Statistiques des forums

Discussions
312 871
Messages
2 093 102
Membres
105 627
dernier inscrit
jean-marc.brillant