Bonjour à tous,
Pour me constituer une base de données client, je débute avec le VBA alors je galère pas mal, mais bon grâce à l'aide des uns et des autres (que je remercie chaudement en passant) ça commence à prendre forme, reste quelques points que j'ai besoin d'améliorer alors pour construire les fonctionnalités de ma base de données je m'inspire des fichiers joint par les utilisateurs du forum, en faisiant du copier collé et en tentant d'adapter les valeurs des UserForm et des Modules.. 8 fois sur 10 j'ai des messages d'erreurs et je ne m'en sort pas!
par exemple:
j'arrive à afficher une ListBox dans le userform5 qui extrait de ma base certaines données de mes clients (j'ai pigé comment choisir les données que je veux voir afficher), selectionner le client qui m'interesse et ouvrir sa fiche complète, mais dans cette listBox je ne parvient pas à afficher les entêtes de colonne ni à avoir des colonnes que je pourrais élargir ou rétrécir avec la souris .. Dois-je tout refaire sous forme de Listview? si c'est le cas je suis mort car j'ai essayé et je ne suis pas arrivé à adapter les solutions que j'ai vu sur le forum!c'est mon premier SOS:
Autre point: je voufrais protéger ma base de donnée:
1) cacher la base en cachant la feuille1 et avoir un mot de passe pour pouvoir l'afficher.
2) Avoir un mot de passe pour accéder aux macro.
Quelqu'un pourrait-il aussi m'aider pour que dans l'userform "résultat" je puisse replir certaine cases en choisissant la réponse dans une petite liste qui s'ouvrirait (combox je crois)
Encore un autre pour le Fun: dans la fiche client est-il possible d'imaginer un bouton pour lancer l'explorateur internet?
Si oui lancer automatiquement la carte Viamichelin ou Mappy en générant automatiquement le link avec l'adresse recherchée (le grand luxe quoi!)
En pièce jointe une partie de la structure de ma base, pour info dans ma base complète, j'ai 65 infos par client et donc autant de ListBox dans la l'userform (résultat).
Pour cause de taille de fichier joignable j'ai déshabillié ma base de donnée de tous les texte et box pour l'alléger au stricte minimum et comme ça ne suffisait pas pour passer sous la barre des 50ko j'ai vidé le module6 (le texte est ci-dessous)
Si vous voulez bien m'aider Il faut donc maintenant faire copier coller pour tester les codes sur ma base
Module6:
Sub test()
'ordre alphabetique
Sheets("feuil1").Range("A8").Select
selection.Sort Key1:=Range("A8"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
Call calculnombrefiches
'redéfini selection
' Sheets("feuil1").Range("A8").Resize(rowsize:=Range("F1").Value, columnsize:=1).Select
' UserForm5.ListBox1.List = selection.Value
Dim var
Dim T()
Dim i&
var = Sheets("feuil1").Range("A8:bm" & Sheets("feuil1").Range("F1").Value + 7 & "")
ReDim T(1 To UBound(var, 1), 1 To 5)
For i& = 1 To UBound(var, 1)
T(i&, 1) = var(i&, 1)
T(i&, 2) = var(i&, 2)
T(i&, 3) = var(i&, 3)
T(i&, 4) = var(i&, 4)
T(i&, 5) = var(i&, 5)
Next i&
With UserForm5.ListBox1
.ColumnCount = 5
.ColumnWidths = "" & .Width / 6 * 2 & ";" & .Width / 5 & ""
.List = T
End With
UserForm5.Show
End Sub
merci d'avance !
Pour me constituer une base de données client, je débute avec le VBA alors je galère pas mal, mais bon grâce à l'aide des uns et des autres (que je remercie chaudement en passant) ça commence à prendre forme, reste quelques points que j'ai besoin d'améliorer alors pour construire les fonctionnalités de ma base de données je m'inspire des fichiers joint par les utilisateurs du forum, en faisiant du copier collé et en tentant d'adapter les valeurs des UserForm et des Modules.. 8 fois sur 10 j'ai des messages d'erreurs et je ne m'en sort pas!
par exemple:
j'arrive à afficher une ListBox dans le userform5 qui extrait de ma base certaines données de mes clients (j'ai pigé comment choisir les données que je veux voir afficher), selectionner le client qui m'interesse et ouvrir sa fiche complète, mais dans cette listBox je ne parvient pas à afficher les entêtes de colonne ni à avoir des colonnes que je pourrais élargir ou rétrécir avec la souris .. Dois-je tout refaire sous forme de Listview? si c'est le cas je suis mort car j'ai essayé et je ne suis pas arrivé à adapter les solutions que j'ai vu sur le forum!c'est mon premier SOS:
Autre point: je voufrais protéger ma base de donnée:
1) cacher la base en cachant la feuille1 et avoir un mot de passe pour pouvoir l'afficher.
2) Avoir un mot de passe pour accéder aux macro.
Quelqu'un pourrait-il aussi m'aider pour que dans l'userform "résultat" je puisse replir certaine cases en choisissant la réponse dans une petite liste qui s'ouvrirait (combox je crois)
Encore un autre pour le Fun: dans la fiche client est-il possible d'imaginer un bouton pour lancer l'explorateur internet?
Si oui lancer automatiquement la carte Viamichelin ou Mappy en générant automatiquement le link avec l'adresse recherchée (le grand luxe quoi!)
En pièce jointe une partie de la structure de ma base, pour info dans ma base complète, j'ai 65 infos par client et donc autant de ListBox dans la l'userform (résultat).
Pour cause de taille de fichier joignable j'ai déshabillié ma base de donnée de tous les texte et box pour l'alléger au stricte minimum et comme ça ne suffisait pas pour passer sous la barre des 50ko j'ai vidé le module6 (le texte est ci-dessous)
Si vous voulez bien m'aider Il faut donc maintenant faire copier coller pour tester les codes sur ma base
Module6:
Sub test()
'ordre alphabetique
Sheets("feuil1").Range("A8").Select
selection.Sort Key1:=Range("A8"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
Call calculnombrefiches
'redéfini selection
' Sheets("feuil1").Range("A8").Resize(rowsize:=Range("F1").Value, columnsize:=1).Select
' UserForm5.ListBox1.List = selection.Value
Dim var
Dim T()
Dim i&
var = Sheets("feuil1").Range("A8:bm" & Sheets("feuil1").Range("F1").Value + 7 & "")
ReDim T(1 To UBound(var, 1), 1 To 5)
For i& = 1 To UBound(var, 1)
T(i&, 1) = var(i&, 1)
T(i&, 2) = var(i&, 2)
T(i&, 3) = var(i&, 3)
T(i&, 4) = var(i&, 4)
T(i&, 5) = var(i&, 5)
Next i&
With UserForm5.ListBox1
.ColumnCount = 5
.ColumnWidths = "" & .Width / 6 * 2 & ";" & .Width / 5 & ""
.List = T
End With
UserForm5.Show
End Sub
merci d'avance !