begin process at 2010 03 19 06:07:23
  Trouver un code source :
 
dans
 

44 commentaire(s) de bigane sur des sources sur tout CodeS-SourceS

Déposé sur Comment créer une base access, créer table, lire colonne, en ...

Je suis désolé, ce code fonctionnait avec VB6 et VBA pour Office 97 à 2003.
Microsoft a évolué depuis et avec le temps j'ai abandonné tous leurs produits au profit des produits libres (entendre libre d'accès aux sources et gratuits).

Donc le premier test pour savoir si ce code est toujours d'actualité, c'est DAO. Si cet objet est reconnu (cf : 2- dans le menu projet, menu références, coche : Microsoft DAO 3.5 Object Library ou DAO avec une version supérieure) En saisissant le mot DAO puis le point dans la fenêtre du code, alors la complétion automatique devrait te proposer Workspace(0) ou quelque chose d'approchant. Au pire, il pourrait te proposer le mot OpenDatabase :
DAO.OpenDatabase( ...


Si tu n'arrives pas à avoir cette méthode : càd pas de complétion pour le mot DAO c'est que :
1) soit tu n'as pas mis Microsoft DAO x.y Object Library
2) soit tu n'utilises pas VB ou VBA

Bon courage,
Bigane




Posté le : 04/02/2009 08:17:22

Déposé sur Comment créer une base access, créer table, lire colonne, en ...

Merci,
a ton service et bon code.
a+
Bigane
Posté le : 25/02/2007 19:37:57

Déposé sur Comment créer une base access, créer table, lire colonne, en ...

Salut Igorois,
Non, désolé je n'ai pas cela. Par contre j'ai déjà eu un problème similaire. C'est réélement complexe.
Tu peux utiliser la commande suivante :
    Dim dbEng As DAO.DBEngine
    dbEng.CompactDatabase scrName, DstName
Car celle-ci permet de créer une copie compressée de ta base initiale. Un balayage des tables permet ensuite de les vider une à une, et une dernière compression réinitialise les compteurs.
Une seconde méthode consiste à creer une base vide, à énumerer les tables et les colonnes de ta première base pour ensuite les créer dans la suivante. C'est long, mais si tu y arrive tu pourras tout faire avec cette méthode.
A+
Posté le : 02/07/2005 01:16:21

Déposé sur Comment créer une base access, créer table, lire colonne, en ...

Salut,

Désolé pour ton problème, mais tu ne peux pas insérer une ligne dans plusieurs tables en une seule requête.
Par contre si tu la décompose (une par table) alors tu devrais pouvoir y arriver.

Pour ton premier problème, voici une solution :
db.Execute "CREATE  TABLE [TableA] ( [ColonneX] Long);"

db.Execute "CREATE  TABLE [TableB] ( [ColonneX] Number );"

La table A contiendra une colonne de type Long (effecue des tests pour vérifier le type).
La table B contiendra une colonne de type Double, poun insérer une valeur tu feras par exemple :

db.Execute "INSERT INTO TableB ( ColonneX ) values (2.5);"

A+
Bigane

Posté le : 02/05/2005 18:51:25

Déposé sur Comment créer une base access, créer table, lire colonne, en ...

Donne plus d'explications  :
Une requête ? elle rapatrie un ou plusieurs résultats ?

--> si un seul alors tu intégre les données avec une simple requête d'ajout ou un recordset ouvert sur la table de destination (et rs.addnew comme décrit plus haut).
--> si plusieurs tu peux faire une boucle pour relire les enregsitrements de ta requête un a un et utilisé la méthode utilisée pour un seul.
Sinon tu as encore la possibilité d'effectuer une requête d'insersion "insert into LaTable select xxx" et tu utilise ta fameuse requête comme sources de valeur à écrire dans ta table. Problème :  il faut que tes données correspondent exactement à celles de la table de destination.
Cela doit te donner des pistes ... sinon, donne un exemple de requête, le type de tes données, la ou les tables de résultats ...
a+
Bigane.

Posté le : 20/09/2004 19:12:18

Déposé sur Comment créer une base access, créer table, lire colonne, en ...

salut zeunz,

Voici ce que tu peux faire (par exemple)
Crée une base avec deux tables :
Clients [
  idClient : numérique, primarykey
  NomClient : Texte
]
Produits [
  idProduit : numérique, primarykey ;
  idClient : numérique ;
  NomProduit : Texte
]

le but de la manip sera alors de relier les champs idClient des deux tables.

Voici le bout de code créant cette relation en ADO :
' Pour simplifier, je désigne db comme
' étant ma base dans la suite du code
Dim db As Database
Set db = CurrentDb()
Dim r As Relation

' Création d'une relation
Set r = New Relation

' Ma relation relie les clients et les produits, d'où ce nom pratique
r.Name = "ClientsProduits"

'  J'indique les tables concernées par cette relation
r.Table = "Clients"
r.ForeignTable = "Produits"

' Je désigne le champ de la table "Clients"
r.Fields.Append r.CreateField("idClient")

' ce champ est relié à la table jointe (au champ idClient)
r.Fields("idClient").ForeignName = "idClient"

' J'ajoute la nouvelle relation à la collection de la base
db.Relations.Append r
' validation
db.Relations.Refresh

' libération propre et explicite des pointeurs
set r = nothing
set db = nothing

Au cas où, voici la syntaxe pour supprimer la relation
' db.Relations.Delete "ClientsProduits"

Il est facile pour comprendre les relations de les créer avec l'interface. Puis de regarder le résultat en mode debug avec des espions sur l'objet db.relations par exemple. C'est de cette façon que j'ai créé cet exemple.

A+
Bigane
Posté le : 04/05/2004 19:38:30

Déposé sur Emulation de la fonction replace() de vba6

Voici une ligne qu'il faut ajouter en fin de la fonction :

If Start > 1 Then Replace = Mid$(Replace, Start)

J'ai retrouvé cette idée sur un site étranger :
http://www.programmazione.it/index.php?entity=etip&idTip=110&idArea=1

C'est marrant, on a toujours réinventé la roue, sa fonction replace me semble correcte, a voir ...
Posté le : 12/02/2004 22:02:45

Déposé sur Comment se débarrasser de vb6fr.dll limitant la compatibilité...

Tiens, cind lignes qui devrait t'aider dans la recherche du Graal :

   Open cdg.FileName For Binary As #1
   buffer = String(LOF(1), 0)
   Get #1, , buffer
   Put #1, 1, Replace(buffer,"VB6FR.DLL" & vbnullchar & vbnullchar & vbnullchar,"MSVBVM60.DLL")
   Close #1

Je ne l'ai pas testé, je n'ai pas VB6 sur ce poste, mais cela devrait fonctionner. A condition que la fonction replace (VBA) soit présente dans ton VB.
A+
Posté le : 12/02/2004 21:53:51

Déposé sur Remenber vb 2.0.0b

Salut,
Il y a de bonnes idées dans ton code, et quelques défauts. Mais j'aime bien son principe et je te (vous, puisque vous êtes deux) propose une idée suplémentaire.

Un des défauts est lié aux problèmes de codification des lignes VB dans un fichier ini. Si je veux saisir une routine avec des retours chariots, des signes égal plein les lignes et autres codes.. ton programme ne fonctionne plus (ou mal). Aussi voici ce que je te propose :

J'ai posté sur vbfrance un source avec le codage/décodage de texte en Base 64 : source 16830, lien: http://www.vbfrance.com/code.aspx?ID=16830
Il est très optimisé et permet de coder en chaine de caractères lisibles toute chaine de texte.
Ainsi, voici un exemple de ligne dans ton fichier ini
Avant :
Aller à la ligne=& Chr(13) & Chr(10)
Après :
Aller à la ligne=Q2hyKDEzKSAmIENocigxMCk=
Le (ou les) sigle égal à la fin ne dérange pas la lecture de la ligne.

Pour le codage décodage, dans mon source tu utilisera Decode64 et Encode64. Les fonctions hash_string, ReadFile et WriteFile peuvent être retirées.

L'insertion dans ton code peut, entre autres, se situer à cette ligne :

Retenir = LectureIni
Que tu changerai en
Retenir = Decode64(LectureIni)

Dernier avantage (et celui là est immense ) : un fichier codé en Base64 passe dans le Net sans être déformé. On peut donc envoyer un mail (ou ftp) avec un fichier codé sans qu'Internet ne le déforme.

A+
Bigane
Posté le : 20/10/2003 10:09:06

Déposé sur Coder decoder fichier en base-64 pour transmission en format ...

merci,
fais en bon usage.
Et fais moi un mail quant ton projet spam-remover sera prêt.
A+
Posté le : 06/10/2003 18:18:16

1 2 3 4 5


Nos sponsors


Sondage...

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 : 0,281 sec (4)

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