IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

AppleScript Discussion :

Pb Guillemet dans mon résultat


Sujet :

AppleScript

  1. #1
    Membre à l'essai
    Homme Profil pro
    Enseignant
    Inscrit en
    Juillet 2017
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Conseil

    Informations forums :
    Inscription : Juillet 2017
    Messages : 17
    Points : 12
    Points
    12
    Par défaut Pb Guillemet dans mon résultat
    Salut

    J'ai un pb lors d'une modif d'un fichier texte
    J'ai besoin de changer des valeurs dans certaines cellules mais dans mon code la cellule AD garde les guillemets après les modifs (à cause des guillemets je pense)
    ";0;1;0;0;1;0.094339;0.128585;0.879012" quand je l'ouvre en textEdit,

    Comment les enlever ?


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
     
    set file_Name to (path to desktop folder as string) & "Services:Factures.txt" -- Nom du fichier export
    set theOutputPath to (path to desktop folder as string) & "Services:Fiches.txt" -- Nom du fichier modifié pour import
     
     
     
    tell application "Microsoft Excel" -- Ouvrir excel
    	set silently of window 1 to true
    	set visible to false
    	open text file filename file_Name origin Macintosh data type delimited field info {{1, text format}, {2, text format}, {3, text format}, {30, text format}} with tab -- Ouvrir le fichier export txt 
     
    	set value of cell ("A" & "1") to "**Gestion"
    	set value of cell ("B" & "1") to "Confirmations de commande" -- Mettre dans B1 le texte 
    	set value of cell ("B" & "4") to "SARL"
    	set value of cell ("J" & "4") to "411100"
    	set value of cell ("K" & "4") to ""
    	set value of cell ("AS" & "4") to cell ("L" & "4")
    	set value of cell ("L" & "4") to "SARL "
    	set value of cell ("M" & "4") to "2"
    	set value of cell ("N" & "4") to "RUE XXXX"
    	set value of cell ("P" & "4") to "BAT N°2"
    	set value of cell ("Q" & "4") to "95000"
    	set value of cell ("R" & "4") to "YYYYY"
    	set value of cell ("U" & "4") to "06 82 XXXX"
    	set value of cell ("V" & "4") to "01 78 XXXXX"
    	set value of cell ("W" & "4") to "EEEEEEE@orange.fr"
    	set value of cell ("X" & "4") to "FR"
    	set value of cell ("Y" & "4") to "0249TTTTTTT"
    	set value of cell ("AR" & "4") to "Export Facture"
    	set value of cell ("AQ" & "4") to "ooooo"
     
    	set I to 5 -- Boucle demarant à 5
    	repeat until (I = 100) -- jusqu'à 100
    		if value of cell ("B" & I) is not equal to "" then set value of cell ("B" & I) to "DIVERS" -- si B? n'est pas vide alors saisir vide (B = Code Produit)
    		if value of cell ("B" & I) is equal to "DIVERS" then set value of cell ("AD" & I) to ";0;1;0;0;1;0.094339;0.128585;0.879012" -- Ligne qui me pose pb
    		if value of cell ("D" & I) is not equal to "" then set value of cell ("D" & I) to "" -- D = Px Unit
    		if value of cell ("G" & I) is not equal to "" then set value of cell ("G" & I) to "" -- G = Remise
    		if value of cell ("H" & I) is not equal to "" then set value of cell ("H" & I) to "" -- H = Code TVA
    		if value of cell ("I" & I) is not equal to "" then set value of cell ("I" & I) to "" -- I = Taux TVA
    		if value of cell ("J" & I) is not equal to "" then set value of cell ("J" & I) to "" -- J = Px Achat
    		set I to I + 1 -- augmenter la valeur de I +1
    		log I -- lit I
    	end repeat -- s'arreter si I = 100
     
    	tell active workbook
    		save workbook as filename theOutputPath file format text Mac file format with overwrite without asking -- Sauvegarder modifs dans nouveau fichier
    		quit saving no -- fermer les fichiers excel
    	end tell
    end tell

  2. #2
    Membre à l'essai
    Homme Profil pro
    Enseignant
    Inscrit en
    Juillet 2017
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Conseil

    Informations forums :
    Inscription : Juillet 2017
    Messages : 17
    Points : 12
    Points
    12
    Par défaut
    Je pu constater que c'est la présence des ";" qui me génère la conservation des guillemets

  3. #3
    Membre éprouvé

    Homme Profil pro
    Directeur de projet
    Inscrit en
    Septembre 2010
    Messages
    602
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Directeur de projet
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Septembre 2010
    Messages : 602
    Points : 1 239
    Points
    1 239
    Par défaut
    Bonjour,
    Je ne comprends pas très bien ce que tu souhaites mettre dans les cellules de la colonne AD (AD5 à AD100) : la valeur que tu indiques avec des suites de chiffres séparés par des ";" est un peu bizarre. Que comptes tu en faire sur Excel ?
    Ne serait-il pas mieux de mettre ses valeurs individuelles dans des cellules séparées ?

    Sans connaître les tenants et les aboutissant de ton problème, il est difficile de t'aider.

    Cordialement

    PS : ton repeat/until pourrait être remplacé par un "repeat with I from 5 to 100" qui est plus rapide et évite la ligne "set I to I+1".

  4. #4
    Membre à l'essai
    Homme Profil pro
    Enseignant
    Inscrit en
    Juillet 2017
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Conseil

    Informations forums :
    Inscription : Juillet 2017
    Messages : 17
    Points : 12
    Points
    12
    Par défaut
    Voilà !
    Je veux modifier un fichier provenant d'un export d'un logiciel de Gestion.
    Ce fichier est en TXT séparateur TAB
    Dans une colonne (AD) se trouve le format des lignes qui ressemble à ça quand on l'ouvre avec textedit: ;0;1;1;0;1;0;0
    Le code correspond à taille, Gras, italique, souligné, et la couleur
    Bref
    J'ai besoin de changer ce code sur certaines lignes (celles qui ont un code dans la colonne B) et le remplacer par exemple par : ;0;1;1;1;0.6543;0.7450;0.4567
    qui correspond à un changement de couleur de la ligne

    Pb quand je change ce code, la présence des ; (points virgules) met dans la cellule un guillemet au debut et à la fin de la cellule. ";0;1;1;1;0.6543;0.7450;0.4567"
    Pb : quand je veux re-importer le nouveau fichier il ne reconnait pas le champs à cause des guillemets.
    Je suis clair ?
    Merci d'avance

  5. #5
    Membre à l'essai
    Homme Profil pro
    Enseignant
    Inscrit en
    Juillet 2017
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Conseil

    Informations forums :
    Inscription : Juillet 2017
    Messages : 17
    Points : 12
    Points
    12
    Par défaut
    J'ai aussi oublié de préciser que je suis un expatrié du windows
    Je suis dans Applescrit que depuis 15 jours, j'ai tout créé en recopiant des scripts sur des forums comme celui-ci.
    Je cherche à apprendre mais mon travail fait que je n'ai pas le temps de démarrer par les bases.
    Soyez indulgent sur le coté amateur du code. (j'ose même pas vous montrer le dernier que je viens de faire)

  6. #6
    Membre à l'essai
    Homme Profil pro
    Enseignant
    Inscrit en
    Juillet 2017
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Conseil

    Informations forums :
    Inscription : Juillet 2017
    Messages : 17
    Points : 12
    Points
    12
    Par défaut g trouvé une parade
    G réussi à résoudre mon pb avec bbedit
    Je vous met que la fin du code pour que vous compreniez
    Pas mal non ?


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
     
    	set I to 5 -- Boucle demarant à 5
    	repeat until (I = 100) -- jusqu'à 100
    		if value of cell ("B" & I) is not equal to "" then set value of cell ("B" & I) to "DIVERS" -- si B? n'est pas vide alors saisir vide (B = Code Produit)
    		if value of cell ("B" & I) is equal to "DIVERS" then set value of cell ("AD" & I) to "XXXX0XXXX1XXXX0XXXX0XXXX1XXXX0.094339XXXX0.128585XXXX0.879012"
    	etc ....
     
     
    	tell active workbook
    		save workbook as filename theOutputPath file format current platform text file format with overwrite without asking -- Sauvegarder modifs dans nouveau fichier
    		quit saving no -- fermer les fichiers excel
    	end tell
    end tell
     
    tell application "BBEdit"
    	open theOutputPath with LF translation
    	select text 1 of project window 1
    	open find window
    	replace "XXXX" using ";" searching in text 1 of text document "Fiches de travail.txt" options {starting at top:true}
    	close find window saving yes
    	save text document 1
    	close project window 1 saving yes
    	quit
    end tell

  7. #7
    Membre à l'essai
    Homme Profil pro
    Enseignant
    Inscrit en
    Juillet 2017
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Conseil

    Informations forums :
    Inscription : Juillet 2017
    Messages : 17
    Points : 12
    Points
    12
    Par défaut Recherche Doc AppelScript
    Comme je vais bcp manipuler l'appleScript, je recherche des bouquins sur le sujet (en Francais)
    Sachant que je dois surtout travailler en liaison avec un logiciel de gestion, je vais surtout travailler mes documents avec Excel (export txt modif via excel save en txt et import)
    Je veux pas devenir un pro, mais avoir les bases pour comprendre vos réponses.
    Un titre à me conseiller ?

  8. #8
    Membre éprouvé

    Homme Profil pro
    Directeur de projet
    Inscrit en
    Septembre 2010
    Messages
    602
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Directeur de projet
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Septembre 2010
    Messages : 602
    Points : 1 239
    Points
    1 239
    Par défaut
    Bonjour,
    Désolé, je n'ai pas progressé avec des livres, mais seulement par essais/expérience et bien sûr l'ami Google (dont ce site).
    J'ai bien vu plusieurs fois de références, mais à chaque fois en anglais !

    Tu pourra bien sûr poser tes questions sur ce site.

    Cordialement

  9. #9
    Expert confirmé
    Homme Profil pro
    PAO
    Inscrit en
    Octobre 2014
    Messages
    2 576
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : PAO
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Octobre 2014
    Messages : 2 576
    Points : 4 174
    Points
    4 174
    Par défaut
    Bonjour,

    Au vu de ce que tu veux faire, ce serait pour moi/à mon sens, plutôt un travail pour Excel/VBA.
    Et même si par exemple, au final tu ne veux pas un fichier Excel, rien ne empêche de l'enregistrer en CSV où le format souhaité.
    Par contre sur Mac je te conseille d'utiliser la version Excel Mac 2011 pour faire du VBA (la version 2016 étant largement amoindri dans les outils permettant de coder correctement).
    Sinon rien ne t'empêche de coder sur Excel windows si tu n'as pas Excel Mac 2011
    De plus la FAQ Excel VBA y est bien fourni (pas besoin forcément de livre) sans compter les réponses correspondant à peu de chose près à ton contexte.

    Voilà
    Cordialement
    Ryu

    La connaissance s’acquiert par l’expérience, tout le reste n’est que de l’information. – Albert Einstein

    Pensez à la Balise [ CODE][/CODE ] - à utiliser via le bouton # => Exemple

    Une fois votre problème solutionné pensez à mettre en n'oubliant pas d'indiquer qu'elle est la solution finale choisie

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Insertion de guillemets dans mon résultat
    Par Richou42 dans le forum Macros et VBA Excel
    Réponses: 13
    Dernier message: 12/07/2016, 11h54
  2. Mon site est en chute dans les résultats google
    Par biforx5 dans le forum Référencement
    Réponses: 2
    Dernier message: 01/12/2010, 17h36
  3. [Batch] Guillemets dans mon IN
    Par -={-_-}=- dans le forum Scripts/Batch
    Réponses: 6
    Dernier message: 18/09/2009, 09h36
  4. Résultat dans mon code.
    Par sonic1 dans le forum C
    Réponses: 2
    Dernier message: 04/03/2009, 18h45
  5. Réponses: 12
    Dernier message: 14/04/2008, 10h52

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo