FORUMS PROFESSIONNELS
WINDEV
,
WEBDEV
et
WINDEV Mobile
Accueil
|
Messages récents
|
Connexion
|
Déconnexion
|
Français
Accueil
→
WINDEV (précédentes versions)
→
V20 - Empêcher de Verrouiller les cellules d'un fichier Excel
V20 - Empêcher de Verrouiller les cellules d'un fichier Excel
Débuté par TaWoT, 07 fév. 2018 15:15 - 5 réponses
Connectez-vous…
TaWoT
#1
Membre enregistré
4 messages
Posté le 07 février 2018 - 15:15
Bonjour,
Voilà, je fais une modification dans un fichier excel protégé par un mot de passe. Tout se passe bien sauf que les cellules "déverrouillées" passent en "verrouillées" ... C'est un problème car les utilisateurs ne peuvent plus utiliser les cellules qui leurs sont dédiées. Donc est-ce que vous savez comment éviter à Windev de verrouiller les cellules qui ne le sont pas ?
Voici le code, rien de particulier et je n'ai pour l'instant rien trouvé dans mes recherches.
// Version Windev 20
xls
est un xlsDocument
s
Fichier
est une chaîne
=
"fichier.xlsx"
xls
=
xlsOuvre
(
s
Fichier
,
xlsEcriture
)
// J'ai essayé avec toutes les options possibles
xlsFeuilleEnCours
(
xls
,
xlsNbFeuille
(
xls
)
)
// Traitement
xlsFeuilleEnCours
(
xls
,
1
)
// on se repositionne sur la première feuille
xlsSauve
(
xls
)
xlsFerme
(
xls
)
Merci de votre aide !
Signaler
0
0
Fred G
#2
Membre enregistré
41 messages
Popularité : +7 (7 votes)
Posté le 08 février 2018 - 11:48
Bonjour,
Pour contourner ça et avoir la main sur tous les traitements excel , je te conseille d'utiliser la classe Cexcel fourni avec un exemple de windev (pilotage d'excel) qui utilise des objets d'automation autrement dit le vba.
Il se peut même qu'il laisse tes cellules non-verrouillées tranquilles...
il te faudra juste rajouter une méthode à cette classe pour gérer le verrouillage des cellules, ci après un exemple
// cette partie est gérée par la classe Cexcel de windev
paut
Monexcel
est
un objet OLE
dynamique
paut
Monexcel
=
allouer un objet OLE
"Excel.Application"
paut
Monexcel
>
>
Workbooks
>
>
Open
(
"c:\fichier.xlsx"
)
// protection ... déverrouillage ... rajouter une méthode pour gérer ça
paut
Monexcel
>
>
ActiveSheet
>
>
Unprotect
// la feuille active ou une autre renseigner le mot de passe éventuellement
paut
Monexcel
>
>
ActiveSheet
>
>
Range
(
"la_plage_de_cellule_que_tu_veux"
)
>
>
Locked
=
False
paut
Monexcel
>
>
ActiveSheet
>
>
Protect
Signaler
1
0
TaWoT
#3
Membre enregistré
4 messages
Posté le 13 février 2018 - 16:46
Bonjour,
Merci beaucoup pour votre réponse !! ça fonctionne comme il faut !
Par contre, est-ce qu'il y a une documentation qui répertorie toutes les fonctions qu'on peut utiliser avec l'objet OLE Dynamique pour Excel car à part des cas particulier c'est tout ce que j'ai trouvé :/ Il y a bien une doc non ?
Merci encore pour votre aide !
Signaler
0
0
Fred G
#4
Membre enregistré
41 messages
Popularité : +7 (7 votes)
Posté le 13 février 2018 - 18:21
Hello,
cool !
l'objet OLE Excel te permet d'accéder aux objets vba excel, donc c'est plus la doc sur les objets vba excel que tu dois regarder. Par exemple imaginons que tu veuilles colorier une cellule en vert , en vba tu pourrais écrire : Range("B1").Interior.Color = RGB(0, 255, 0)
ce qui donnerait :
Si tu veux l'utiliser sous windev, tu as juste à remplacer les "." par des " >>" (notation WIndev pour les objets ole) et donc pour la même chose tu écrirais en utilisant l'objet ole instancié :
paut
Monexcel
>
>
Range
(
"B1"
)
>
>
Interior
>
>
Color
=
RVB
(
0
,
255
,
0
)
Signaler
1
0
TaWoT
#5
Membre enregistré
4 messages
Posté le 14 février 2018 - 09:19
Bonjour
Whoua mais c'est juste génial ça !!
Un Grand Merci !!
En plus, avec l'enregistrement des macros ça aide plutôt bien pour trouver les mots clefs !
Et bas c'est parfait pour moi !
Encore merci et bonne journée à toi !
Signaler
0
0
Fred G
#6
Membre enregistré
41 messages
Popularité : +7 (7 votes)
Posté le 14 février 2018 - 11:00
you're welcome
, amuse-toi bien et bonne journée également
Signaler
1
0
→ Revenir à WINDEV (précédentes versions)
WINDEV 2024
WEBDEV 2024
WINDEV Mobile 2024
WINDEV (précédentes versions)
WEBDEV (précédentes versions)
WINDEV Mobile (précédentes versions)
Etats & Requêtes
Hors-sujet
Outils
Français
English
Español
Portuguesa
Fermer cette fenêtre
Type de recherche
Uniquement les sujets
Tous les messages
Période de recherche
Date indifférente
Moins d'une heure
Moins de 24 heures
Moins d'une semaine
Moins d'un mois
Moins d'un an
Annuler
Aperçu de votre message
Ajouter une image
Importer une image depuis une URL
Envoyer une image depuis un fichier de votre disque
Déposez ici un fichier ou cliquez sur "Parcourir..."
ou
Annuler
0%
WLangage
SQL
XML, HTML
JAVA, Javascript
Texte