transcrire une formule envba

  • Initiateur de la discussion Initiateur de la discussion f69815
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

f69815

XLDnaute Occasionnel
bonjour le forum,
j'ai créé une formule " =SI(ESTERR(TROUVE(CAR(146);A1));A1;REMPLACER(A1;TROUVE(CAR(146);A1);1;CAR(39))) ", et je voudrais la transcrire en vba, car il n'y a pas toujours le même nombre de ligne à traiter.
merci de votre aide.
 
Re : transcrire une formule envba

bonjour pierrot,

pas simple à expliquer
le car(146)=’ alors que le car(39)='(simple cotte).
je récupère du texte pdf, avec freeocr, et il me met des car(146) pour les simples cottes.
ce texte me sert à remplir des formulaires pdf, via des fichiers "fdf".

mais dans mon formulaire ce fameux car(146) se traduit par "TM", ce qui donne lTMartiste à la place de l'artiste.

mais si dans mon texte dans excel je remplace " ’ " par " ' ", dans mon formulaire tout est bien. d'ou la nécessitée de la formule mais en vba.


voici le code qui permet le remplissage du formulaire :
Sub EditionFeuilleAcrobat()
'===================
' Permet de créer le fichier FeuilleDevoir.fdf,
'qui alimente le formulaire "S-89-F-1 feuille de devoir.pdf"
'===================
Dim Fichier As String
Fichier = "H:\pdf\FeuilleDevoir.fdf"
Sheets("fdf").Select
Range("A1:A349").Select
Selection.Copy
'===================
'Ajoute une nouvelle feuille pour coller uniquement les valeurs de la feuille "FDF"
'===================
Sheets.Add After:=Sheets(Sheets.Count)
'-------------------

'===================
'Colle les valeurs
'===================
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
'-------------------

'===================
'Ouvre le fichier "FeuilleDevoir.fdf" pour écrire les valeurs
'===================
Open Fichier For Output As #1
For i = 1 To 349
Print #1, Range("A" & i) 'renvoie la valeur cellule A(i) dans le fichier txt
Next i
Close #1 ' ferme le fichier ouvert
'--------------------

'====================
' supprime la feuille créée pour coller uniquement les valeurs
'====================
ActiveWindow.SelectedSheets.Delete
'--------------------

'====================
'Lance le fichier créé ainsi que le formulaire "S-89-F-1 feuille de devoir.pdf" rempli
'====================
Shell ("C:\Program Files (x86)\Adobe\Reader 10.0\Reader\AcroRd32.exe " & Fichier), vbMaximizedFocus
'--------------------
End Sub
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

  • Question Question
Microsoft 365 problème d'index
Réponses
19
Affichages
498
Réponses
4
Affichages
311
Réponses
4
Affichages
344
Réponses
9
Affichages
264
Retour