begin process at 2012 02 14 07:46:33
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Visual Basic 6

 > 

Langages dérivés

 > 

VBA

 > 

Fonction mid() excel vba


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Fonction mid() excel vba

mardi 7 juillet 2009 à 15:48:43 | Fonction mid() excel vba

avyrex1926

Membre Club
Bonjour a tous.

J'ai besoin de votre aide sur unscripte.

Voici mon problème.

Sur la feuille "Test", j'ai plusieurs lignes qui contiennent des données importées d'un fichier .dat.

Donc dans la cellule A2 en descendant, j'ai des données comme ceci:

01517 G1514689610 303 4726 251070309111301230ND$$8.37 5070109N

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Le 01517 = numéro du magasin.

Ensuite, après la lettre G, les 2 premiers chiffres: 15 égale le numéro de département.

Ensuite, la section 11301230 égale Livraison du début (Heure) suivi de Livraison fin (Heure)

Ses mêmes informations se retrouvent dans la feuille 04.

Je voulais que chaque ligne de la feuille test soit corrigée par la feuille 04.

Prenon l'exemple si:

Feuille test

01517 G1514689610 303 4726 251070309111301230ND$$8.37 5070109N
01517 G1714689660 542 4807 256070309111301230ND$$8.53 5070109N


- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Feuille 04

Magasin Département Livraison début (Journée) Livraison du début (Heure) Livraison Fin (Jour) Livraison fin (Heure)
01517 15 Mon 07:00 Mon 09:00
01517 17 Thu 07:00 Thu 09:00


Donc je retrouve le même numéro de magasin, le même numéro de département, sauf que les heures ne sont pas identiques. La macro doit prendre les heures de la feuille 04 et les changer dans la feuille test.

Résultat final:

01517 G1514689610 303 4726 251070309107000900ND$$8.37 5070109N
01517 G1714689660 542 4807 256070309107000900ND$$8.53 5070109N

La premiere heure débute a la position 51 jusqu'a 54, et le 2ieme partie est 55 jusqu'a 58.

De 51 à 54 doit avoir la valeur de la colonne V de la feuille 04, s'il a la valeur du magasin et du département.

De 55 à 58, il doit avoir la valeur de la colonne X de la feuille 04, s'il a la valeur du magasin et du département.

Donc selon le magasin et le numéro de département de la feuille 04, les heures vont changer.

Cette fonction dois ce faire sur chaque ligne de la feuille Test.


Comment faire s.v.p

Merci pour votre aide.
mardi 7 juillet 2009 à 23:52:46 | Re : Fonction mid() excel vba

us_30

Membre Club
Bonsoir,

Si tu veux mon avis, tu devrais déjà importé ton fichier .dat, dans différentees colonnes, ce qui faciletera la recherche... Il suffit d'utiliser comme indentificateur [espace] lors de l'importation.
Ensuite il restera à utiliser une fonction de recherche comme MID...

Amicalement,
Us.

mercredi 8 juillet 2009 à 13:31:39 | Re : Fonction mid() excel vba

nandinho

Bonjour,
Si les heures définitives de livraison sont dans la feuille ("04") colonnes X et Y
Si les données à remplacer sont dans la feuille("teste") colonnes A avec une ligne de titres
Je fais une boucle sur le nombre de lignes à traiter et je remplace chaque ligne.
Bien sur, je remplace les dois points (:) de l'heure par rien, je concatène les deux heures (début et fin de livraison), avec la fonction "MID" je remplace les anciennes données (heures) par les nouvelles et enfin je remplace le contenu initiale de la cellule par le résultat des opérations précédentes ... avant de passer à la ligne suivante


Sub debut_teste()
Sheets("teste").Select
nbre_lignes = Application.WorksheetFunction.CountA(Sheets("teste").Range("a:a"))
For chaque_ligne = 2 To nbre_lignes
heure_debut = Right(Sheets("04").Cells(chaque_ligne, 24), 5)
heure_debut = Replace(heure_debut, ":", "")

heure_fin = Right(Sheets("04").Cells(chaque_ligne, 25), 5)
heure_fin = Replace(heure_fin, ":", "")
heures = heure_debut & heure_fin
donnee_a_changer = Sheets("teste").Cells(chaque_ligne, 1)
donnee_modifie = Mid(donnee_a_changer, 1, 37) & heures & Mid(donnee_a_changer, 46)
Cells(chaque_ligne, 1).Value = donnee_modifie
Next
End Sub

Bon courage pour la suite



Cette discussion est classée dans : feuille, magasin, livraison, département, 5070109n


Répondre à ce message

Sujets en rapport avec ce message

suppression de ligne conditionnelle [ par arnaud95000 ] Bonjour à tous,En fait j'ai un problème sous VBA j'ai réussi à le résoudre mais c'est un peu long je voudrais savoir si vous auriez une procédure plus Aide MCD de mon projet "Gestion des approvisionnements d'un magasin de prêt à porter? [ par skadnesta ] Bonsoir... Je suis ici afin d'avoir une aide sur le MCD de mon projet "Gestion des approvisionnements". Voici mon étude de l'existant: A partir des de Comment faire pour afficher le résultat de mes Userforms à un endroit précis de ma feuille Word ? [ par petitsucre ] Bonjour à tous, Voilà, je viens à vous car depuis trois jours j'essaie de régler les problèmes et que je ne trouves rien, alors que ma question est tr Verrouillage feuille en gardant filtres actifs Excel97 [ par unzestzen ] Bonjour à tousJ'aimerais savoir si il est possible de verrouillez une feuille (pour garder les données) et garder les filtres actifs.Oui je sais, je t Propriétés imprimante [ par rida_riad ] Bonjour,Est il possible de déterminer la propriété nombre de page par feuille (Ex imprimer 2 pages dans une seule feuille)on utilisant le code?Merci p Récupérer les valeurs de plusieurs contrôles label sur une feuille Excel en VBA [ par antilaupe ] Bonjour a tous, Je bute sur un problème VBA ExcelJe voudrais faire une boucle sur des labels indicés (ex: label1, label2, label3) posés sur une feuill nom d'une combobox sur une feuille excel [ par didou853113 ] Bonjour, j'ai créé une combobox sur une feuille "Facture" dans excel grâce à la boite d'outils formulaire. Comment connaître le nom de ma combobox et Transparence et feuille MDI [ par got ] Bonjour,j'ai trouvé quelques sources pour jouer sur la transparence des feuilles. Entre autre grâce aux api                 SetWindowLong et SetLayere Une seule entrée allant successivement dans plusieurs cellules au fur et à mesure [ par virole ] Je ne sais pas si c'est la bonne méthode, mais après mettre baladé sur le forum, j'ai pu constater que le petit Jack avait l'air dégourdi.Alors vérifi VB [ par moustike31 ] Bonjour, Je travaille sur Excel et mon fichier comporte 7 feuilles dont une feuille de menu avec des images. Et j'aimerai quand cliquant sur l'image c


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,794 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales