XL pour MAC Deux questions concernant un tableau de compte

dubarre

XLDnaute Nouveau
Bonjour,

Je viens vers vous car je suis débutant et après plusieurs recherches j'ai pas à trouver la solution, il y a peut-être I conversation déjà ouverte dans ce cas Veuillez m'en excuser mais je n'en ai pas trouvé.

la première question j'ai par exemple cinq colonnes la sixième il permettra de faire un pointage en fonction de mon relevé de compte je voudrais faire un pointage en cliquant une fois sur la cellule pour que par exemple à X apparaissent et si je clique dessus il disparaît comment peut-on faire cela j'ai essayé avec mise en forme mais je n'y arrive pas.

Ma deuxième question une fois que le pointage avec le X est réalisé est-il possible que par exemple dans la cellule C3 il y a la somme qu'il y a sur mon relevé bancaire, et au fur et à mesure que je sélectionne mais ligne celui-ci décompte La somme.

Après j'ai cette idée là mais peut-être que vous avez mieux à me proposer, Je vous en remercie d'avance cordialement.
 

Paf

XLDnaute Barbatruc
Bonjour,

Un essai:
si les montants sont en colonne E ( à partir de E2) et le pointage en colonne F (à partir de F2), dans la feuille de code de la feuille de pointage, coller:

VB:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Count > 1 Then Exit Sub
DL = Range("E" & Rows.Count).End(xlUp).Row
If Not Intersect(Target, Range("F2:F" & DL)) Is Nothing Then
  Target.Value = IIf(Target.Value = "X", "", "X")
  Range("C3").Value = IIf(Target.Value = "X", Range("C3").Value - Target.Offset(, -1), Range("C3").Value + Target.Offset(, -1))
End If
End Sub
A+
 

dubarre

XLDnaute Nouveau
Je viens d'essayer ton code il fonctionne correctement c'est vraiment ce que j'avais besoin par contre une fois que j'ai rentré la somme dans la cellule C3 comment dans le code on peut faire un signal comme quoi on a dépassé la somme qu'on a rentré par exemple : dans la cellule C3 il y a le chiffre 600 dans la cellule E1 400 et E2 600 donc il y aura au -100 dans C3

comment je peux avoir un signal pour Me dire "attention ça dépasse" merci cordialement
 
Dernière édition:

Paf

XLDnaute Barbatruc
la modification:

VB:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Count > 1 Then Exit Sub
DL = Range("E" & Rows.Count).End(xlUp).Row
If Not Intersect(Target, Range("F2:F" & DL)) Is Nothing Then
  If Target.Value = "X" Then
  Target.Value = ""
  Range("C3").Value = Range("C3") + Target.Offset(, -1)
  Else
  If Target.Offset(, -1).Value > Range("C3").Value Then
  MsgBox "attention ça dépasse"
  Exit Sub
  Else
  Target.Value = "X"
  Range("C3").Value = Range("C3") - Target.Offset(, -1)
  End If
  End If
End If
End Sub
 

dubarre

XLDnaute Nouveau
En rentrant le code dans mon petit classeur quand je lui mets la colonne ou je veux le X il refuse en mettant en rouge pourtant je fais un copier coller en changeant simplement les cases.

La seconde chose J’ai complètement émis vous dire en fait j'ai deux colonnes une colonne débit et une colonne crédit est troisième colonne et soldes je vous envoie le Petit classeur je vous remercie de votre aide cordialement
 

Fichiers joints

Paf

XLDnaute Barbatruc
dans le classeur rien ne correspond à la demande initiale et le code adapté n'y figure même pas.

comment savoir ce qu'il met en rouge et pourquoi.
 

Paf

XLDnaute Barbatruc
Un copier coller qui a rajouté le caractère " en fin de ligne:
VB:
If Not Intersect(Target, Range("i7:i" & DL)) Is Nothing Then "
 

dubarre

XLDnaute Nouveau
Bonsoir,

Tout d'abord je tiens à vous dire merci et Votre aide cela fonctionne pour la Croix par contre je n'arrive pas à les déduire de la somme quand je fais avec La croix la somme qui est dans la case M7 je suis désolé vraiment de vous embêter mais je n'as pas trouvé la solution encore une fois je vous sollicite je vous remercie cordialement.
 

Fichiers joints

Paf

XLDnaute Barbatruc
VB:
  Range("M7").Value = IIf(Target.Value = "X", Range("M1").Value - Target.Offset(, -1), Range("M7").Value + Target.Offset(, -1))
Ce code était donné avec le offset (décalage) correspondant aux emplacement supposés dans le post #2.
Désormais les montants ne sont plus une colonne avant, mais une colonne après la colonne de pointage. Donc utiliser :
Target.Offset(, 1)
 

Discussions similaires


Haut Bas