Usf - dv 5 niveaux

Regueiro

XLDnaute Impliqué
Bonsoir le Forum
J'essaie d'adapter un code de Boisgontier.
Je vous joint mon fichier.
Mon souhait voir sur la feuille "DEVIS"
Merci de votre aide.
 

Pièces jointes

  • ERP LOGICO MSIT - 2012.02.16.xlsm
    31.6 KB · Affichages: 159
  • ERP LOGICO MSIT - 2012.02.16.xlsm
    31.6 KB · Affichages: 161
  • ERP LOGICO MSIT - 2012.02.16.xlsm
    31.6 KB · Affichages: 159

Regueiro

XLDnaute Impliqué
Re : Usf - dv 5 niveaux

Bonsoir le Forum
Salut Bebere.
Merci 1000 fois pour ton aide.
Juste pour éclairer ma lanterne, je ne comprends pas ce que tu voulais dire au Post N°30.
Sur ton Post N° 32, tu parles de " Ajout d'1 message si pas de données " que veux-tu dire ?
Je continue sur mon programme et si j'ai quelques questions je reviendrais demander ton Aide.
Merci encore.
Bonne Soirée.
A+
 

Regueiro

XLDnaute Impliqué
Re : Usf - dv 5 niveaux

Bonjour Le Forum, Bebere et Fo_rum
Merci de ta réponse.
Hier je ne devais pas être en forme, je n'ais pas vu le Post N° 28 de ce fameux "Fo_rum"
que je salue en passant et qui très une autre alternative intéressante.
Concernant le Label je ne l'avais pas tout de suite.
Je continue ma formation et mon programme et je ne manquerais pas de vous appeler à l'aide.
Merci à tous les 2 ?
A+
 

Regueiro

XLDnaute Impliqué
Re : Usf - dv 5 niveaux

Bonjour à tous.
J'aimerais améliorer mon programme avec une ADO
Mais je ne sais pas ou mettre ce code ( exemple de Boisgontier )
Code:
Private Sub UserForm_Initialize()
  'Microsoft ActiveX Data Object 2.8 doit être activé
  Dim rs As ADODB.Recordset
  Set cnn = New ADODB.Connection
  répertoire = ThisWorkbook.Path & "\"
  fichier = "BDD MP.xls"
  cnn.Open "DRIVER={Microsoft Excel Driver (*.xls)};DBQ=" & répertoire & fichier
  Set rs = cnn.Execute("SELECT [Code Produit],[Désignation MP] FROM BD WHERE [Code Produit]<>'' group BY [Code Produit],[Désignation MP]")
  Me.ComboBox1.List = Application.Transpose(rs.GetRows)
  rs.Close
  cnn.Close
  Set rs = Nothing
  Set cnn = Nothing
  SendKeys "{F4}"
End Sub

Et encore une petite difficulté pour alimenter mes ListView,
MATERIAUX
SALAIRES
INVENTAIRE
TIERS
sont dans ma BDD dans 4 onglets différents ??
Je ne sais pas si c'est possible.

Merci de votre Aide
A@
 

Pièces jointes

  • ERPLOGICO MSIT - BDD2012.zip
    106.1 KB · Affichages: 27

Regueiro

XLDnaute Impliqué
Re : Usf - dv 5 niveaux

Bonjour à tous.
J'essaie d'avancer seul mais je ne suis pas un pro.
j'ai mis le code dans mon programme, mais je suis bloqué

Private Sub UserForm_Initialize()
'***********************
'Essai du 2012.02.25 avec aide du fichier AdiFourn de Boisgontier
'Microsoft ActiveX Data Object 2.8 Library est activé sur mon poste

'Microsoft ActiveX Data Object 2.8 doit être activé
Dim rs As ADODB.Recordset
Set cnn = New ADODB.Connection
répertoire = ThisWorkbook.Path & "\"
fichier = "ERPLOGICO MSIT - BDD2012.xlsm"
cnn.Open "DRIVER={Microsoft Excel Driver (*.xlm)};DBQ=" & répertoire & fichier

Set rs = cnn.Execute("SELECT [Code Produit],[Désignation MP] FROM BD WHERE [Code Produit]<>'' group BY [Code Produit],[Désignation MP]")
Me.ComboBox1.List = Application.Transpose(rs.GetRows)
rs.Close
cnn.Close
Set rs = Nothing
Set cnn = Nothing
SendKeys "{F4}"
'******************************
For i = 1 To 5 '5
If i = 1 Then largeur = 120 Else largeur = 200
Me("ListView" & i).ColumnHeaders.Add , , "niveau" & i, largeur
Me("ListView" & i).Gridlines = True
Me("ListView" & i).View = lvwReport
Next

For Each c In Application.Index([bd], , 1)
If c <> "" Then
Me.ListView1.ListItems.Add , , c & " - " & c.Offset(, 6)
End If
Next

Me.ListView1.ListItems(1).Selected = False
Set Me.ListView1.SelectedItem = Nothing

For i = 1 To Me.ListView1.ListItems.Count
If i Mod 2 = 0 Then
Me.ListView1.ListItems(i).ForeColor = &H8000& ' &HFF0000 'bleu &H8000& 'vert
Me.ListView1.ListItems(i).Bold = True
End If
Next
Me.Label1.Visible = False
' Me.ListView1.SetFocus
' SendKeys "{F4}"
End Sub

Sub liste(col)

Me("Listview" & CStr(col)).ListItems.Clear

For Each c In Application.Index([bd], , col)
If c.Value <> "" Then
Select Case col
Case 2
If Left(c, 1) = Left(Me("Listview" & CStr(col - 1)).ListItems(L).Text, 1) Then
Me("Listview" & CStr(col)).ListItems.Add , , c.Value & " - " & c.Offset(, 7 - col).Value 'avec ajout " - "
End If

Case Else
X = Me("Listview" & CStr(col - 1)).ListItems(L).Text
X = Mid(X, 1, InStr(X, "-") - 2)
If Left(c, Len(X)) = X Then
Me("Listview" & CStr(col)).ListItems.Add , , c.Value & " - " & c.Offset(, 7 - col).Value 'avec ajout " - "
End If
End Select
End If
Next c

If Me("Listview" & CStr(col)).ListItems.Count > 0 Then
Me.Label1.Visible = False
Me("Listview" & CStr(col)).ListItems(1).Selected = False
Set Me("Listview" & CStr(col)).SelectedItem = Nothing
For i = 1 To Me("Listview" & CStr(col)).ListItems.Count
If i Mod 2 = 0 Then
Me("Listview" & CStr(col)).ListItems(i).ForeColor = &H8000& ' &HFF0000 'bleu &H8000& 'vert
Me("Listview" & CStr(col)).ListItems(i).Bold = True
End If
Next
Else
Me.Label1.Visible = True
Me.Label1.Caption = "Pas de données"
End If

' Me("Listview" & CStr(col)).SetFocus
' SendKeys "{F4}"

End Sub
Merci de votre Aide
 

Bebere

XLDnaute Barbatruc
Re : Usf - dv 5 niveaux

bonjour Regueiro
ma réflexion,peut être que tu n'as pas de réponse parce que tu es trop insistant
quand quelque chose ne va pas,je me pose des questions et je cherche une solution
essai ADO avec le fichier *.xls(dans le zip) comme fichier destination(BD,nom défini)
dans ce fichier destination il faut supprimer les lignes inutiles
si tu effaces tu auras des lignes vides
excel met à jour les paramètres de BD(si ajout,supprimer)
à bientôt
 

Pièces jointes

  • Erpoglio.zip
    121.9 KB · Affichages: 97

Regueiro

XLDnaute Impliqué
Re : Usf - dv 5 niveaux

Bonjour Le Forum
Salut Bebere
Je te remercie de prendre de ton temps sur mon cas Insistant.
Par contre, je n'ais pas tout compris ton explication.
Dans le fichier ZIP, il y a ces 3 fichiers :
1. ERPLOGICO MSIT - 2012.02.24 (V1).xls
2. ERPLOGICO MSIT - 2012.02.24.xlsm
3. ERPLOGICO MSIT - BDD2012.xlsm

J'ais bien ouvert le fichier N° 1, mais il n'y pas de ADO.

Par contre dans le fichier N° 3 tu as mis un module1 avec ADO.
J'essaye de comprendre.
Dans mon cas, si j'ais bien tout compris
ADO devrait être dans le fichier destination qui est "ERPLOGICO MSIT - 2012.02.24.xlsm"
et le fichier source est "ERPLOGICO MSIT - BDD2012.xlsm"
Merci de ta réponse.
A+
 

Regueiro

XLDnaute Impliqué
Re : Usf - dv 5 niveaux

Merci de ta réponse.
Mais là je comprends plus rien.
Que voulais tu que je fasse avec ton fichier *.xls ?

Maintenant si je copie le Module1 du fichier N°3
je dois bien le copier dans le fichier N°2 et créer un module.
C'est bien ça.
Merci
 

Regueiro

XLDnaute Impliqué
Re : Usf - dv 5 niveaux

Bonjour Le Forum
Salut Bebere
J'ai chercher la solution pour mon problème, mais là je crois que mes limites sont atteintes.
Pourrais-tu m'aider pour ce code. svp.
Je suis si prêt du but de mon programme que cela me serait ennuyeux d'arrêter maintenant.
Merci de ton Aide.
Au plaisir de t'entendre
A+
 

Discussions similaires

Réponses
4
Affichages
361

Statistiques des forums

Discussions
311 711
Messages
2 081 799
Membres
101 818
dernier inscrit
tiftouf5757