SUPER RESOLU - macro exécute si cellule vide et je ne m'en sors pas

Usine à gaz

XLDnaute Barbatruc
Supporter XLD
Bonjour à toutes et à tous,

Encore besoin de vous.

Je n'arrive pas à codifier pour qu'une macro ne s'exécute que si la cellule sélectionnée est vide.
Pourriez-vous m'aider.

Voici mon code:
Code:
Sub AjouteDevantG()
Application.EnableEvents = False
Application.ScreenUpdating = False
ActiveSheet.Unprotect Password:="Krameri"
ActiveWorkbook.ActiveSheet.Select
If Range("G7:G15") > 0 Then
Exit Sub
End If
ActiveCell.Offset(0, 7).Select
Selection.Copy
ActiveCell.Offset(0, -7).Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
ActiveCell.Offset(0, 5).Select
ActiveCell.FormulaR1C1 = _
        "=MID(IF(LEFT(NUMERO(RC[-5]))=""0"",MID(NUMERO(RC[-5]),2,9*9),NUMERO(RC[-5])),1,11)"
Application.CutCopyMode = False
ActiveCell.Offset(0, -5).Select
Application.EnableEvents = True
Application.ScreenUpdating = True
End Sub

Je joins un classeur test,
Un grand merci encore une fois.

Bonne journée à toutes et à tous,
Amicalement,
Calimero,
 

Pièces jointes

  • Ajoute Devant.xlsm
    28.9 KB · Affichages: 32
  • Ajoute Devant.xlsm
    28.9 KB · Affichages: 40
  • Ajoute Devant.xlsm
    28.9 KB · Affichages: 45
Dernière édition:

ERIC S

XLDnaute Barbatruc
Re : macro exécute si cellule vide et je ne m'en sors pas

Bonjour

peut-être au niveau de feuil2

If Not Application.Intersect(KeyCells, Range(Target.Address)) Is Nothing Then
If Target.Value = "" Then Call AjouteDevantG
End If
 

Usine à gaz

XLDnaute Barbatruc
Supporter XLD
Re : macro exécute si cellule vide et je ne m'en sors pas

Bonsoir Eric,

Merci pour votre réponse et votre code.
Je l'ai intégré mais il ne m'ajoute plus le 33 devant le munéro saisi.

Je joins le nouveau classeur.
Amicalement,
Calimero,
 

Pièces jointes

  • Ajoute Devant21.xlsm
    30 KB · Affichages: 23

ERIC S

XLDnaute Barbatruc
Re : macro exécute si cellule vide et je ne m'en sors pas

re
il faudrait que tu expliques comment fonctionne ton fichier et ce que tu veux faire. J'ai répondu à ta question, le macro ne s'execute pas si la cellule n'est pas vide
 

Usine à gaz

XLDnaute Barbatruc
Supporter XLD
Re : macro exécute si cellule vide et je ne m'en sors pas

Bonne nuit à toutes et à tous,

Je reviens vers toi en te joignant un nouveau classeur avec des explications que j'espère plus clairs LOL.

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim KeyCells As Range
Set KeyCells = Range("G7:G15")
On Error Resume Next
If Target.Value = "" Then Call AjouteDevantG
Application.EnableEvents = True
If Not Application.Intersect(KeyCells, Range(Target.Address)) Is Nothing Then
Call AjouteDevantG
End If

Set KeyCells = Range("H7:H15")
On Error Resume Next
If Target.Value = "" Then Call AjouteDevantH
Application.EnableEvents = True
If Not Application.Intersect(KeyCells, Range(Target.Address)) Is Nothing Then
Call AjouteDevantH
End If

Application.EnableEvents = 0: Application.EnableEvents = 1 '...revient
'ActiveSheet.Protect Password:="Krameri", DrawingObjects:=True, Contents:=True, Scenarios:=True
    'ActiveSheet.EnableSelection = xlNoRestrictions
Application.EnableEvents = True
End Sub

Après "bidouillages", j'ai intégré ton code dans la feuille "ajoutDevant" et j'ai réussi à faire remettre la macro qui ajoute le 33 en marche.

En revanche, j'ai du me tromper (c'est la nuit LOL) et si on clique à nouveau sur une cellule qui contient déjà un numéro avec le 33, il ajoute toujours un nouveau 33 devant et supprime les deux derniers chiffres ce qui rend évidemment le numéro inutilisable.

Un grand merci pour ton aide.
Bonne fin de nuit,
Amicalement,
Calimrero,
 

Pièces jointes

  • Ajoute Devant210.xlsm
    31.1 KB · Affichages: 20
Dernière édition:

ERIC S

XLDnaute Barbatruc
Re : macro exécute si cellule vide et je ne m'en sors pas

Re

regarde ajoutdevant(2)

tout le code est dans la feuille (pas de module)
je convertis le nombre entré ou copié par macro y compris si signes

je vais partir dans 1/2 h retour vers 15h
 

Pièces jointes

  • ajoute-devant210.xlsm
    37.5 KB · Affichages: 24

Usine à gaz

XLDnaute Barbatruc
Supporter XLD
Re : macro exécute si cellule vide et je ne m'en sors pas

Re-Bonjour Eric,

ça marche super vraiment je ne sais que dire ....... Merci,

Mais j'ai vu un truc bizarre : si j'ai à supprimer des cellules ou colonnes après H (bien sûr), excel bloque et ne répond plus.
Peut-être un truc à faire.

Est-ce que ça bloque chez toi ?
Je joins un nouveau classeur que j'ai fait "tout simple" avec jusque ta macro.

Encore Merci,
Amicalement,
Calimero,
 

Pièces jointes

  • Classeur1.xlsm
    15.2 KB · Affichages: 27
  • Classeur1.xlsm
    15.2 KB · Affichages: 29
  • Classeur1.xlsm
    15.2 KB · Affichages: 25

Usine à gaz

XLDnaute Barbatruc
Supporter XLD
Re : macro exécute si cellule vide et je ne m'en sors pas

Re,

Merci de m'avoir encore répondu,
EH Ben ...... ça marche vous êtes super et vous n'imaginez pas le service que vous me rendez.
De plus, j'ai un gros classeur qui me pose le même genre de souci et c'est peut-être aussi la solution.

Vraiment Merci cela m'aide beaucoup dans mon travail.

J'aimerai aussi aider les gens du site qui m'apportent tant d'aide avec une telle patience .... LOL
Mais qui sait peut-être un jour ? en tout cas je l'espère.

Bonne fin de journée et à toutes et à tous,
Amicalement,
Calimero,
 

Usine à gaz

XLDnaute Barbatruc
Supporter XLD
Re : macro exécute si cellule vide et je ne m'en sors pas

Bonjour Eric,
Bonjour à toutes et à tous,

Je me suis trompé de fil.
J'ai remis sur le bon = souci de calendrier avec validation des données.

Encore Merci pour votre écoute :)

Bonne journée à tous,
Amicalement,
Calimero,
 

Pièces jointes

  • saisie date.xlsm
    132.6 KB · Affichages: 17
  • saisie date.xlsm
    132.6 KB · Affichages: 30
  • saisie date.xlsm
    132.6 KB · Affichages: 33
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
312 467
Messages
2 088 680
Membres
103 918
dernier inscrit
comite des fets allonzier