XL 2013 MODIF BDD EN FONCTION D1 OK

GADENSEB

XLDnaute Impliqué
Bonjour,

Je voudrais, en lançant le Bouton3, que pour toutes les lignes (Onglet Interface) ou dans la colonne D= "OK" alors dans l'onglet "BDD" la ligne concernée (1,2,3,4,,,,,,) on modifie la colonne D

--> Si OK alors colonne D = "OUI"

Merci à vous

Bonne Journée
Seb
 

Pièces jointes

  • CASE A COCHER ET MODIF BDD1.xls
    51.5 KB · Affichages: 9

GADENSEB

XLDnaute Impliqué
Hello
Je viens de retester ce code et il me demande de declarer les variable tablo1 et tablo2 et N
Je dim avec quoi ??

Pour précision j'utilise en xlsm...
Voici mon code
Code:
Sub Maj_Bq()


tablo1 = Sheets("INTERFACE").Range("M8:U" & Sheets("INTERFACE").Range("m" & Rows.Count).End(xlUp).Row)

tablo2 = Sheets("COMPTES").Range("A1:T" & Sheets("COMPTES").Range("A" & Rows.Count).End(xlUp).Row)
For n = LBound(tablo1, 1) To UBound(tablo1, 1)
  If tablo1(n, 9) = "ok" Then
   For M = LBound(tablo2, 1) To UBound(tablo2, 1)
     If tablo1(n, 1) = tablo2(M, 1) Then
         tablo2(M, 15) = "OUI"
     End If
   Next
End If
Next
Sheets("COMPTES").Range("A1").Resize(UBound(tablo2, 1), UBound(tablo2, 2)) = tablo2
End Sub

Bonne journée
 
Dernière édition:

GADENSEB

XLDnaute Impliqué
Ok
avec ce code je n'ais pas de message d'alerte mais rien ne se modifie.
on est d'accord que l'on cherche dans la colonne 9 (la 8eme aprés la premiére ) si il y a "OK"
La hauteur de zone de recherche est la colonne U qui est définie en hauteur de la colonne M, a partir de la ligne 8


Puis si "ok" on va dans la Bdd (onglet COMPTES) on cherche la reference en colonne M puis in fait le changement en "OUI" dans la colonne 15 ( la 14 eme aprés la premiére)

retour à la boucle......


C'est bien cela ?

Code:
Sub Maj_Bq()
Dim tablo1 As Variant
Dim tablo2 As Variant
Dim n As Integer
Dim m As Integer

tablo1 = Sheets("INTERFACE").Range("M8:U" & Sheets("INTERFACE").Range("m" & Rows.Count).End(xlUp).Row)
tablo2 = Sheets("COMPTES").Range("A1:T" & Sheets("COMPTES").Range("A" & Rows.Count).End(xlUp).Row)


For n = LBound(tablo1, 1) To UBound(tablo1, 1)
  If tablo1(n, 9) = "ok" Then
   For m = LBound(tablo2, 1) To UBound(tablo2, 1)
     If tablo1(n, 1) = tablo2(m, 1) Then
         tablo2(m, 15) = "OUI"
     End If
   Next
End If
Next
Sheets("COMPTES").Range("A1").Resize(UBound(tablo2, 1), UBound(tablo2, 2)) = tablo2
End Sub
 

Discussions similaires

Statistiques des forums

Discussions
312 858
Messages
2 092 872
Membres
105 546
dernier inscrit
DUL57