Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

transcrire une formule envba

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.
 

Pierrot93

XLDnaute Barbatruc
Re : transcrire une formule envba

Bonjour,

peut être nous indique ce que cette formule est sensée faire et nous donner un petit fichier représentatif des données à traiter...

bon après midi
@+
 

f69815

XLDnaute Occasionnel
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
 

f69815

XLDnaute Occasionnel
Re : transcrire une formule envba

il me semble que c'est uniquement pour découper un champ en plusieurs, suivant des critères bien déterminés. et mon fameux caractères n'est pas toujours à la même place.
 

Discussions similaires

Réponses
8
Affichages
266
Réponses
6
Affichages
142
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…