RECHERCHER :
COMMUNAUTE MP
Identifiez vous ...
Devenir Membre
J'ai oublié mon MDP
DOMAINE MP
Bavardages
Langages Généraux
Langages Web
Langages DotNet
Autres langages
Dev. Jeux Video
Sécurité
Sys. Exploitation
Graphismes
Logiciels
Réseaux
Bases de données
Méthodologies
Emplois High-tech
Aide juridique
Articles juridiques
FORUM
Index des forums
Ajouter un sujet
Rechercher sujet
Contact Responsable
Devenir modérateur
CHAT MP IRC
Votre pseudo ...
Srv: irc.moteurprog.com
Chan: #MoteurProg
PARTICIPER
Plus de 3500 emplois.
Rechercher un job
Déposez votre CV
Emplois High-tech

Visiteur MP

 macro excel modifiant des caracteres

Forum : VISUAL BASIC
Sous Catégorie : Aucune
Type du sujet : Sujet Normale
FAQ : FAQ VISUAL BASIC

SUIVI DES SUJETS PAR MAIL

SUIVI PAR MAIL INACTIF

RESOLUTION DU SUJET SUJET RESOLU
BLOQUAGE DU SUJET SUJET ACTIF
APPARTENANCE A LA FAQ N'APPARTIENT PAS A LA FAQ


PAGES : [1] [2] [3] [4] [5] [6] [7] [8] [9] [10]

POSTER UN NOUVEAU SUJET REPONDRE A CE SUJET

FORUM VISUAL BASIC

PREMIERE PAGE

PAGE PRECEDENTE

Page précedente

Page suivante

PAGE SUIVANTE

DERNIERE PAGE
babyshaq
Membre newbie
Inscrit : 30/05/2008
Messages : 51
Message
#153717
Posté le 02/06/08 à 16:32
Je vien de tester sur d'autres document mais ca marche pas.

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE 

Publicité
Inscrit : X
Messages : X
Message
#Aucun

HAUT DE PAGE

  

Visiteur MP
Membre du club
Inscrit :
Messages : 1250
Message
#153720
Posté le 02/06/08 à 17:21
Il faut que les changements soient dans la colonne H

et que ce soit A2, A3, A4, A5 à changer

hé ce n'est pas si simple ;-))))

RGI

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE ALLER VOIR SON SITE

babyshaq
Membre newbie
Inscrit : 30/05/2008
Messages : 51
Message
#153738
Posté le 03/06/08 à 08:38
Il faut faire une macro pour ca ou il existe une fonction?

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE 

Visiteur MP
Membre du club
Inscrit :
Messages : 1250
Message
#153739
Posté le 03/06/08 à 08:44
Le programme VBA est dans le fichier que je vous ai fourni

pour le voir faites un clik droit sur l'onglet de feuille et cliquez sur visualiser le code

Salutations

RGI

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE ALLER VOIR SON SITE

babyshaq
Membre newbie
Inscrit : 30/05/2008
Messages : 51
Message
#153740
Posté le 03/06/08 à 08:49
Ce code la?

Sub Macro1()
Workbooks.OpenText Filename:= _
ThisWorkbook.Path & "\test.txt", Origin:=932 _
, StartRow:=1, DataType:=xlDelimited, TextQualifier:=xlDoubleQuote, _
ConsecutiveDelimiter:=False, Tab:=True, Semicolon:=False, Comma:=False _
, Space:=False, Other:=True, OtherChar:="|", FieldInfo:=Array(Array(1, 1 _
), Array(2, 1), Array(3, 1), Array(4, 1), Array(5, 1), Array(6, 1), Array(7, 1), Array(8, 1), _
Array(9, 1), Array(10, 1), Array(11, 1), Array(12, 1), Array(13, 1), Array(14, 1), Array(15 _
, 1), Array(16, 1), Array(17, 1), Array(18, 1), Array(19, 1), Array(20, 1)), _
TrailingMinusNumbers:=True
Sheets("test").Select
End Sub


Il faut que je le modifie non car il marche pas?

Donc si je veux avoir le resultat final il faut que j'execute d'abord la macro 1 qui met en colonne, puis la macro 2 qui change les caracteres?

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE 

Visiteur MP
Membre du club
Inscrit :
Messages : 1250
Message
#153741
Posté le 03/06/08 à 08:58
Ce code sert à importer les données du fichier text dans le fichier xls

ce n'est pas celui là mais plutot celui ci

Sub recherche()
Dim valeur, vt, rep
Dim Msg1, Style, Title, Response1
rep = Array("A2", "A3", "A4", "A5", "A6")
For i = 0 To 4
valeur = rep(i)
Title = "RECHERCHE de " & valeur
Range("H1").Select
On Error Resume Next
ActiveSheet.Cells.Find(What:=valeur, After:=ActiveCell, LookIn:=xlFormulas, LookAt:= _
xlPart, SearchOrder:=xlByColumns, SearchDirection:=xlNext, MatchCase:=False) _
.Activate
If rep(i) = "A2" Then ActiveCell = "S16"
If rep(i) = "A3" Then ActiveCell = "S1"
If rep(i) = "A4" Then ActiveCell = "S2"
If rep(i) = "A5" Then ActiveCell = "S3"
If rep(i) = "A6" Then ActiveCell = "S4"
Response1 = vbYes 'MsgBox(Msg1, Style, Title)
Do While Response1 = vbYes
Cells.FindNext(After:=ActiveCell).Activate '
If rep(i) = "A2" Then ActiveCell = "S16"
If rep(i) = "A3" Then ActiveCell = "S1"
If rep(i) = "A4" Then ActiveCell = "S2"
If rep(i) = "A5" Then ActiveCell = "S3"
If rep(i) = "A6" Then ActiveCell = "S4"
If ActiveCell.Column <> 8 Then Range("H1").End(xlDown).Select
vt = Application.Find(valeur, ActiveCell)
If vt = 2015 Then GoTo pass
Loop
pass:
Next
MsgBox "Fin : les valeurs sont changées"
Exit Sub
End Sub

RGI

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE ALLER VOIR SON SITE

babyshaq
Membre newbie
Inscrit : 30/05/2008
Messages : 51
Message
#153742
Posté le 03/06/08 à 09:02
ok mais le code que tu ma donner, sert a modifier les données mais avant il faut que je les mettescomme dans le document ranger par colonne avec les données a modifier dans la colonne H n'est ce pas?

Et pour ca il faut que je creer une autre macro?
(pour povoir les mettre en colonne)

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE 

Visiteur MP
Membre du club
Inscrit :
Messages : 1250
Message
#153743
Posté le 03/06/08 à 09:12
Oui parfaitement la macro1 fait ce travail, il faut que le fichier txt soit dans le path(même place) que le fichier xls et il faut changer le nom dans le code car dans le code il se nomme test.txt, il est bien entendu qu'il est possible de faire ça automatiquement avec une boite de dialogue d'ouverture de fichiers
tel que:
a = Application.GetOpenFilename("fichier texte (*.txt), *.txt", , "Sélection de vos fichiers texte", , True)

a prenant dans ce cas le nom du fichier

Cdlt

RGI

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE ALLER VOIR SON SITE

babyshaq
Membre newbie
Inscrit : 30/05/2008
Messages : 51
Message
#153745
Posté le 03/06/08 à 09:20
ok je voi mais moi j'ai plusieurs fichiers a modifier comme ca, donc si je met ton bout de code ca va m'ouvrir directement les fichier et les changer.

Je pense qu'il faut pas que je mette de chemin d'accés, car c'est pas que pour un fichier, mais des dixaines

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE 

Visiteur MP
Membre du club
Inscrit :
Messages : 1250
Message
#153746
Posté le 03/06/08 à 09:57
oui
si les fichier txt sont dans le même répertoire pas de problème de chemin seulement ilfaudra sauvegarder le xls différement pour ne pas qu'ils s'écrasent entre eux
si les chemins sont différents il faut employer une autre boite qui indique le chemin et le nom du fichier txt à ouvrir
ex :
Sub LeChemin()
Dim fd As FileDialog
Set fd = Application.FileDialog(msoFileDialogFilePicker)
Dim vrtSelectedItem As Variant
With fd
.Filters.Add "Fichier texte", "*.txt", 1
If .Show = -1 Then
For Each vrtSelectedItem In .SelectedItems
MsgBox "Le Chemin et le nom sont : " & vrtSelectedItem
Next vrtSelectedItem
'Si l'utilisateur presse sur Cancel.
Else
End If
End With
Set fd = Nothing
End Sub

Voilà

RGI

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE ALLER VOIR SON SITE
POSTER UN NOUVEAU SUJET REPONDRE A CE SUJET

PREMIERE PAGE

PAGE PRECEDENTE Page précédente

Page suivante

PAGE SUIVANTE DERNIERE PAGE

FORUM VISUAL BASIC



    PAGES : [1] [2] [3] [4] [5] [6] [7] [8] [9] [10]



.: Site Web développé par Julien Pichot et l'équipe MPWG avec www.evolvia-web.com :.