Methode range echoue

J'essai en vain de figer les volets d'une feuille. J'ai utiliser l'enregistreur de macro et j'ai ensuite mis les 2 lignes de codes dans ma macro mais j'ai le message d'erreur "la methode range de la classe select a echoue" Voir la ligne "Range("E3").Select. Quequ'un a une idee?

 Private Sub CommandButton22_Click() '<Z80>

If actif2 = True Then
          actif2 = False

    Windows("LOGICIEL 60.xls:2").Activate  'fenetre mnemonique
    ActiveWindow.Close      'on ferme la fenetre mnemonique
    ActiveWindow.WindowState = xlMaximized  'on met la fenetre principale en plein ecran
      Else
    actif2 = True
    Set Oldcel = ActiveCell    ' On sauvegarde la position de la cellule active avant de se deplacer
    ActiveWindow.DisplayHorizontalScrollBar = True 'necessaire dans le cas ou la scrollBar n'est pas presente avant un clic sur <Z80>
    ActiveWindow.NewWindow
    Sheets("mnemonique2").Select

    ActiveWorkbook.Windows.Arrange ArrangeStyle:=xlVertical
    Windows("LOGICIEL 60.xls:1").Activate 'fenetre principale
    With ActiveWindow
        .Top = -20 'pour cacher la barre
        .Left = -8
        .Width = 828.75
        .Height = 580
    End With

    Windows("LOGICIEL 60.xls:2").Activate 'fenetre mnemonique
    [color=#FF0000]Range("E3").Select[/color]
    ActiveWindow.FreezePanes = True
    ActiveWindow.DisplayWorkbookTabs = False
    ActiveWindow.DisplayHeadings = False

     'Positionnement  :
       With ActiveWindow
        .Top = -20
        .Left = 828
        .Width = 180
        .Height = 580

    End With

    Windows("LOGICIEL 60.xls:1").Activate
 End If

End Sub

Bonsoir,

Sans grande conviction.

De plus les lignes 70 et 210 me semblent inutiles

Cdlt

Option Explicit
Private Sub CommandButton22_Click()    '<Z80>
      Dim actif2 As Boolean
      Dim Oldcel As Range
10        If actif2 = True Then
20            actif2 = False
30            Windows("LOGICIEL 60.xls:2").Activate  'fenetre mnemonique
40            ActiveWindow.Close      'on ferme la fenetre mnemonique
50            ActiveWindow.WindowState = xlMaximized  'on met la fenetre principale en plein ecran
60        Else
70           actif2 = True
              ' On sauvegarde la position de la cellule active avant de se deplacer
80            Set Oldcel = ActiveCell
              ' necessaire dans le cas ou la scrollBar n'est pas presente avant un clic sur <Z80>
90            ActiveWindow.DisplayHorizontalScrollBar = True
100           ActiveWindow.NewWindow
110           Sheets("mnemonique2").Select
120           ActiveWorkbook.Windows.Arrange ArrangeStyle:=xlVertical
              ' fenetre principale
130           Windows("LOGICIEL 60.xls:1").Activate
140           With ActiveWindow
150               .Top = -20    'pour cacher la barre
160               .Left = -8
170               .Width = 828.75
180               .Height = 580
190           End With
200           Windows("LOGICIEL 60.xls:2").Activate    'fenetre mnemonique
210           Range("E3").Select
220           ActiveWindow.FreezePanes = True
230           ActiveWindow.DisplayWorkbookTabs = False
240           ActiveWindow.DisplayHeadings = False
              ' Positionnement  :
250           With ActiveWindow
260               .Top = -20
270               .Left = 828
280               .Width = 180
290               .Height = 580
300           End With
310           Windows("LOGICIEL 60.xls:1").Activate
320       End If
End Sub

Salut, le probleme n'est pas resolu. Lorsqu'on veut figer un volet, il faut choisir l'endroit, c'est le but de la ligne 210 :Range("E3").Select Mais ca me donne une erreur de "methode range". Pourquoi la ligne 210 est en erreur?

Pour ce qui est de actif2, il me permet de toggler donc les lignes sont necessaire. Par contre merci pour l'enlignement!

la ligne 210 me donne toujours une erreur "la methode range de la classe select a echoue". D'apres mes lectures sur le net, le code VBA ne peut pas etre lu a partir de 210 car j'ai ouvert un autre fichier (XLS:2) a la ligne 200 qui lui, ne contient pas ce code. Que dois-je faire? Windows("LOGICIEL 60.xls:2").Activate, ca ouvre un autre classeur?

Option Explicit
Private Sub CommandButton22_Click()    '<Z80>
     Dim actif2 As Boolean
      Dim Oldcel As Range
10        If actif2 = True Then
20            actif2 = False
30            Windows("LOGICIEL 60.xls:2").Activate  'fenetre mnemonique
40            ActiveWindow.Close      'on ferme la fenetre mnemonique
50            ActiveWindow.WindowState = xlMaximized  'on met la fenetre principale en plein ecran
60        Else
70           actif2 = True
              ' On sauvegarde la position de la cellule active avant de se deplacer
80            Set Oldcel = ActiveCell
              ' necessaire dans le cas ou la scrollBar n'est pas presente avant un clic sur <Z80>
90            ActiveWindow.DisplayHorizontalScrollBar = True
100           ActiveWindow.NewWindow
110           Sheets("mnemonique2").Select
120           ActiveWorkbook.Windows.Arrange ArrangeStyle:=xlVertical
              ' fenetre principale
130           Windows("LOGICIEL 60.xls:1").Activate
140           With ActiveWindow
150               .Top = -20    'pour cacher la barre
160               .Left = -8
170               .Width = 828.75
180               .Height = 580
190           End With
200           Windows("LOGICIEL 60.xls:2").Activate    'fenetre mnemonique
210           Range("E3").Select
220           ActiveWindow.FreezePanes = True
230           ActiveWindow.DisplayWorkbookTabs = False
240           ActiveWindow.DisplayHeadings = False
              ' Positionnement  :
250           With ActiveWindow
260               .Top = -20
270               .Left = 828
280               .Width = 180
290               .Height = 580
300           End With
310           Windows("LOGICIEL 60.xls:1").Activate
320       End If
End Sub

Bonjour

Avec un fichier de test pas de problème

Il va falloir joindre ton fichier

18logiciel-60.zip (12.06 Ko)

Salut!

Le voici.

18logiciel-1.zip (186.27 Ko)

Bonjour

Désolé mais je ne sais pas pourquoi

Après quelques tests je n'arrive pas à sélectionner une cellule par macro

Pourtant avec le fichier test que j'ai fait il n'y a pas ce problème

Quelqu'un le sait peut-être

Si une idée survient je ne manquerait pas de le faire savoir

J'ai finalement trouve la solution: puisque le code se trouvait sur une 2ieme fenetre avec une feuille differente,, j'ai du mettre le code dans un module.

Rechercher des sujets similaires à "methode range echoue"