XL2013 - Date et heure en auto + accès multiples

Bonjour la communauté,

voir fichier joint pour mieux comprendre ma demande. Je souhaite :

- avoir un invite de commande à l'ouverture du fichier avec 3 accès distincts (style login en bouton) :

* accès 1 : utilisateur sans mot de passe qui aura accès aux cellules en vert

* accès 2 : magasinier avec mot de passe qui aura accès aux cellules en vert et bleues

* accès 3 : administrateur avec mot de passe qui aura accès à tout (pour insérer des lignes avec E/S/Invent oubliées) sauf code de la macro (à protéger par mdp bien sûr => "roucoulade" anagramme de mon nom et prénom lol). il pourra insérer des lignes et que les calculs se fassent en auto

- lors de la saisie d'une quantité dans les colonnes D, E ou F, la date (colonne B) et l'heure (colonne C) de la ligne saisie se remplissent en automatique. A l'ouverture le jour suivant, les dates et heures ne doivent donc pas s'incrémenter. C'est ce qui se passe avec ma formule sans macro...

- lors de la saisie d'une valeur dans la colonne inventaire (F), pas de possibilité de modifier les valeurs des colonnes D, E et F avec des dates inférieures

- délog toutes les 15'

- à la fermeture du fichier, délog pour qu'à la prochaine ouverture, login obligatoire

- pouvoir utiliser les valeurs du tableau de la feuille "suivi" dans la feuille "alccol pur" car je dois effectuer des calculs. Par contre, si j'insère des lignes dans la feuille "suivi", elles doivent s'ajouter dans la feuille "alcool pur"

Je travaille sur ce fichier depuis un moment. je ne sais pas faire de macro, j'ai réussi à en trouver une qui met la date et l'heure en auto mais à partir des saisies d'une seule colonne et j'ai essayé de modifier cette macro pour avoir 2 variables (passer de 1 colonne à 2 colonnes d'abord) et cela ne fonctionne pas.

Je vous remercie de votre aide

Ludo

22essai.xlsx (12.50 Ko)

Hello la communauté,

Après un été chargé, j'ai avancé sur mon sujet et simplifié les choses :

  • pas besoin d'avoir des accès car j'ai permis les modifications de plage suivant la session de la personne connectée
  • date et heure en auto lorsqu'une valeur des colonnes D ou E ou F sont renseignées => fonctionne avec une formule

Ce que je n'arrive pas même en regardant des macros d'autres demandes du forum, c'est :

- de bloquer la modification de la ligne correspondante lorsque des valeurs sont renseignées D, E ou F

Merci de votre aide

Je mets le fichier V2 en PJ.

Ludo

6essai-v2.xlsm (80.67 Ko)

Bonjour Ludo

Private Sub Worksheet_Change(ByVal Target As Range)
Dim maligne
If Not Intersect(Target, Range("d2:F11")) Is Nothing Then
maligne = ActiveCell.Row

      Cells(maligne, 2) = Date
        Cells(maligne, 3) = Time
End If
End Sub

Bonjour et1000lio,

J'ai copié le code dans le VBA de la feuille.

Cela ne fonctionne pas, quand je renseigne une valeur en D10, il me renseigne les dates et heures de la ligne 11.

Cdt

Ludo

bonjour à tous

mon avis perso de moi

il faut faire ce développement sous Access ou autre SGBD et non sous Excel

VBA ne fait que compliquer les choses. A moins d'être un excellent VBAiste, tu vas galérer. de plus en plus car tes macros vont interférer les unes avec les autres

mais ce n'est qu'un avis perso

Bonjour à tous,

Le problème, c'est que je vais avoir besoin de développer ce fichier pour plusieurs collègues et vu que je connais que Excel et nous n'avons pas Access ou SGBD (pas le droit d'installer des programmes autres que ceux fournis par l'entreprise).

J'ai réussi à bloquer les cellules qui venaient d'être renseignées mais pas la ligne entière.

Merci

Ludo

Bonjour à tous

J'ai copié le code dans le VBA de la feuille.

Cela ne fonctionne pas, quand je renseigne une valeur en D10, il me renseigne les dates et heures de la ligne 11.

Oui je le sais si tu valides avec la touche "Entrée".

En cliquant sur le bouton "Validation" de la barre de formule cela fonctionne.

Donc si tu souhaites valider par la touche "Entrée" voici le code :

Option Explicit

Private Sub Worksheet_Change(ByVal Target As Range)
Dim maligne
If Not Intersect(Target, Range("d2:F11")) Is Nothing Then
maligne = ActiveCell.Row

      Cells(maligne - 1, 2) = Date
        Cells(maligne - 1, 3) = Time
End If
End Sub

Bonjour et1000lio,

J'i remis la V3 avec tes modfis en PJ.

Quand je saisis une valeur en D10, je peux toujours en saisir une autre en E10. Il me faudrait bloquer les valeurs en E10 justement.

Merci

Ludo

11essai-v3.xlsm (82.27 Ko)

t nous n'avons pas Access ou SGBD (pas le droit d'installer des programmes autres que ceux fournis par l'entreprise).

OpenOffice est gratuit

va voir ton admin informatique et fais perfidement remarquer que les macros Excel son sujettes à virus qu'il autorise, alors que les développements OpenOffice base ne le sont pas mais que lui n'autorise pas ce logiciel.

il est en contradiction avec le bon sens

mais il veut garder le pouvoir...

Rechercher des sujets similaires à "xl2013 date heure auto acces multiples"