Recherche
Les mémos
-
Tables
- · Annuler la suppression
- · Attacher feuilles Excel
- · Cacher une table
- · Concaténer une colonne
- · Créer une table
- · Dernière modification
- · Index composé
- · Limiter les enregistrements
- · Liste des champs
- · Modifier valeur de champ
- · Où est la table
- · Peupler une table de Logs
- · Renuméroter un champ
- · Réattacher les liens
- · Réattacher les liens locaux
- Scinder un champ
- · Supprimer les tables liées
- · Trouver la différence
-
Formulaires
- · Afficher les derniers
- · Ajout à liste modifiable
- · Ajouter enregistrement
- · Barre de progression
- · Click ou double-click
- · Confirmer l'enregistrement
- · Copier - Coller
- · Défilement de la roulette
- · Exporter un graphique
- · Filtres personnalisés
- · Identifiants d'un Form continu
- · Importer les formulaires
- · Langue utilisateur
- · Limiter la saisie
- · Mémoriser une valeur
- · No enregistrement
- · Ouvert en normal
- · Position des formulaires
- · Recopier dernière valeur
- · Scroll automatique
- · Switch Modal
- · Tri manuel dans form
- · Tri personnalisé
- · Verrouillage de formulaire
- · Vérifier les saisies
-
Automation
-
Administration
- · Chemin de la base
- · Déconnecter utilisateur
- · Désactiver le Shift
- · Désactiver le Shift(2)
- · Liste des références
- · Liste des utilisateurs
- · Lister les applications
- · Mode exclusif
- · Nom d'utilisateur
- · Nom de l'ordinateur
- · Paramètres régionaux
- · Propriétés de la base
- · Sauvegarde journalière
- · Sauvegarde mensuelle
- · Shell and Wait
- · Version de Windows
-
Envoyer un mail
-
Outlook
- · Ajouter des contacts
- · Déplacer les messages
- · Enregistrer pièces jointes
- · Est ouvert ?
- · Exporter les contacts
- · Exporter les rendez-vous
- · Importer les messages
- · Integrer un état
- · Lire les contacts
- · Lire les rendez-vous
- · Lister les dossiers
- · Lister les tâches
- · SendMail (MAPI)
- · SendMail Automation
-
Dates - Heures
-
Fichiers
- · Compter les dossiers
- · Créer un dossier
- · Générer fichier TXT
- · Importer fichier TXT
- · Le dossier existe ?
- · Le fichier existe ?
- · Lister les fichiers
- · Lister les fichiers (2007)
- · Lister les sous-dossiers
- · Rechercher un répertoire
- · Répertoire dans table
- · Supprimer ReadOnly
- · Sélection de dossier
- · Sélection de dossier (API)
- · Sélection de fichiers
- · Sélection fichier (MOL)
-
Références
Je débute...
-
La normalisation
-
VBA
Visites
1245146 visiteurs
3 visiteurs en ligne
Nous contacter
Contact
Scinder un champ
Scinder un champ
Dans une table mal réalisée, on peut trouver des champs non atomique. On cherchera donc à scinder ce champ en ajoutant deux nouveaux champs à la table.
Un champ non atomique est par exemple un champ [Nom et prénom] lorsque ce champ doit permettre la sélection de tous les "Dupont".
L'utilisation de la fonction fnFieldSplit() permettra de simplifier le scindage du champ à problème.
Syntaxe :
fnFieldSplit "LaTable", "AncienChamp", "Champ1", "Champ2", ";"
ou si l'on souhaite scinder sur une nombre de caractères :
fnFieldSplit "LaTable", "AncienChamp", "Champ1", "Champ2", ,3
Function fnFieldSplit(sTable As String, _ sFieldToSplit As String, _ sNewField1 As String, _ sNewField2 As String, _ Optional sSeparator As String, _ Optional iChar As Integer) Dim DB As DAO.Database Dim RS As DAO.Recordset Dim sC1 As String, sC2 As String Dim Pos As Long Dim sFd As String Set DB = CurrentDb If sSeparator = "" Then sSeparator = " " 'ajout des deux champs CurrentDb.Execute "ALTER TABLE [" & sTable & "] " _ & "ADD COLUMN [" & sNewField1 & "] TEXT;" CurrentDb.Execute "ALTER TABLE [" & sTable & "] " _ & "ADD COLUMN [" & sNewField2 & "] TEXT;" Set RS = DB.OpenRecordset(sTable) 'boucle sur les enregistrements Do Until RS.EOF sFd = Nz(RS(sFieldToSplit), "") If iChar > 0 Then sC1 = Trim(Left(sFd, iChar)) sC2 = Trim(Mid(sFd, iChar + 1)) Else Pos = Nz(InStr(sFd, sSeparator), 0) If Pos > 0 Then sC1 = Trim(Left(sFd, Pos - 1)) sC2 = Trim(Mid(sFd, Pos + 1)) Else sC1 = Trim(sFd) sC2 = "" End If End If RS.Edit RS(sNewField1) = sC1 RS(sNewField2) = sC2 RS.Update RS.MoveNext Loop 'libérer RS.Close DB.Close Set RS = Nothing Set DB = Nothing Exit Function End Function
Catégorie : Les mémos - Tables
Page lue 6437 fois
Page lue 6437 fois