Forcer message de demande ouverture en lecture seule

bastien1000

XLDnaute Nouveau
Bonjour,

Suite à la conception de tableaux croisés dynamiques, quand je lance ma macro il va chercher les infos puis le message suivant :('fichier.xls' devrait être ouvert en lecture seule à moins que vous n'ayez besoin d'enregistrer des modifications. Voulez-vous l'ouvrir en lecture seule?')

Ma question est : Comment forcer ce message en Réponse OUI?

Donc en insérant dans ma macro une ligne de forcage.

Merci
 
C

Compte Supprimé 979

Guest
Re : Forcer message de demande ouverture en lecture seule

Salut Bastien1000,

La réponse est : il faudrait déjà nous mettre le code de ta macro ;):D

Sinon comment veux-tu que l'on puisse te répondre correctement.

A+
 

bastien1000

XLDnaute Nouveau
Re : Forcer message de demande ouverture en lecture seule

Bonjour,

Voici ma macro:


Code:
Sub mise_a_jour_toutes_lignes()
Worksheets("PDCA").Activate
Set ligne_courante = Worksheets("PDCA").Range("A31")
Do Until ligne_courante = ""
If ligne_courante.Offset(0, 7) = "Ouvert" Then
Module2.mettre_à_jour_les_données (ligne_courante.Row)
End If
Set ligne_courante = ligne_courante.Offset(1, 0)
Loop

MsgBox ("Mise à jour de toutes les lignes effectuée")

 End Sub
Sub mettre_à_jour_les_données(ligne)
'
'
repertoire = Worksheets("Paramètres").Range("C8").Value
'repertoire = "D:\CFauvel\application REX\pdca\"
'création du lien hypertexte
colonne = 3
fichier = Cells(ligne, colonne).Value
' sélection du type de PDCA


'ajout avancement PDCA
rep = repertoire + fichier & "\"
Set currentcell = Cells(ligne, colonne)
'Workbooks.Open rep + fichier, , ReadOnly:=True
[B]Cells(ligne, colonne).Hyperlinks(1).Follow NewWindow:=False, [/B]AddHistory:=True
onglet = "Synthèse"
langue = "FR"
On Error GoTo etiq
Worksheets("Synthèse").Activate
If Range("H3").Value = "N° PDCA" Then
langue = "FR old"
Else
End If
Worksheets(onglet).Activate
'recherche des données
'Mise à jour du titre
Select Case langue

Et quand j'arrive à la ligne en gras avec une verification par étape F8 le message s'affiche,comment ne pas afficher le message et passer à l'étape suivante ?

Je vous remercie
 
C

Compte Supprimé 979

Guest
Re : Forcer message de demande ouverture en lecture seule

Salut Bastien1000

Peut-être avec
Code:
Application.DisplayAlerts = False
[B]Cells(ligne, colonne).Hyperlinks(1).Follow NewWindow:=False, [/B]AddHistory:=True
Application.DisplayAlerts = True
;)

A+
 

bastien1000

XLDnaute Nouveau
Re : Forcer message de demande ouverture en lecture seule

Ok je te remercie cela fonctionne,

Mais maintenant il me mets un autre message qui y etait avant aussi c'est celui ci:

Le classeur que vous avez ouvert comporte des liaisons avec un autre classeur, Voulez vous le mettre à jour
ce classeur avec les modifications apportées à l'autre classeur ?

Pour mettre à jour cliquer sur oui
Pour conserver les informations actuelles sur Non



Ma question est :

Comment enlever ce message et répondre Non automatiquement?

Un peut comme l'autre message mais cette fois ci en répondant NON, ce message ce mets à la même ligne de la macro.

je vous remercie vraiment pour votre aide.
 
C

Compte Supprimé 979

Guest
Re : Forcer message de demande ouverture en lecture seule

Salut Bastien1000,

Malheureusement pour toi,
avec l'instruction que tu utilises pour ouvrir le fichier, c'est impossible de supprimer le message de mise à jour du lien :eek:

Avec Workbooks.Open, il me semble que oui avec :
Code:
Workbooks.Open "C:\MonDossier\Monfichier", [B][COLOR=blue]UpdateLinks:=False[/COLOR][/B]

A+
 
C

Compte Supprimé 979

Guest
Re : Forcer message de demande ouverture en lecture seule

Salut,

Dans to code, tu as :
Code:
'ajout avancement PDCA
rep = repertoire + fichier & "\"
Set currentcell = Cells(ligne, colonne)
'Workbooks.Open rep + fichier, , ReadOnly:=True
[COLOR=blue][B]Cells(ligne, colonne).Hyperlinks(1).Follow NewWindow:=False, AddHistory:=True
[/B][/COLOR]onglet = "Synthèse"
langue = "FR"
A la place du code en bleu, essaye
Code:
'ajout avancement PDCA
rep = repertoire + fichier & "\"
Set currentcell = Cells(ligne, colonne)
[B][COLOR=blue]Workbooks.Open rep + fichier, UpdateLinks:=False
[/COLOR][/B]AddHistory:=True
onglet = "Synthèse"
langue = "FR"

A+
 

bastien1000

XLDnaute Nouveau
Re : Forcer message de demande ouverture en lecture seule

Merci pour toutes tes solutions.

C'est bien ce que j'avais fait mais workbooks.open ne convient pas pour la suite de ma macro il faut rester sous worksheets.

N'as tu pas d'autres solutions ?

Je te remercie pour ton attention
 
C

Compte Supprimé 979

Guest
Re : Forcer message de demande ouverture en lecture seule

Re,

Il suffit d'indiquer le conteneur de l'objet worksheet :rolleyes:

Code:
'ajout avancement PDCA
rep = repertoire + fichier & "\"
Set currentcell = Cells(ligne, colonne)
[B][COLOR=blue]Workbooks.Open rep + fichier, UpdateLinks:=False[/COLOR][/B]
[B][COLOR=blue]Set Wbk = ActiveWorkbook
[/COLOR][/B]AddHistory:=True
onglet = "Synthèse"
langue = "FR[B]"[/B]
On Error GoTo etiq
[B][COLOR=blue]Wbk.[/COLOR][/B]Worksheets("Synthèse").Activate
[B][COLOR=green]Set Sht = ActiveWorksheet
[/COLOR][/B]If [B][COLOR=green]Sht.[/COLOR][/B]Range("H3").Value = "N° PDCA" Then
'Etc ...
[B][/[/B]CODE]
 
A+
 

Discussions similaires

Statistiques des forums

Discussions
314 630
Messages
2 111 381
Membres
111 118
dernier inscrit
gmc