Help!

PC-Problemen?
De vrijwilligers van Oplossing.be zoeken gratis met u mee!

Hulp bij posten

Recente topics

Auteur Topic: hoe via VBA een opmerking aan een cel toevoegen als er al een opmerking staat  (gelezen 1437 keer)

0 leden en 1 gast bekijken dit topic.

Offline Montagnard

  • Ambassadeur
  • *****
  • Berichten: 2.385
  • Geslacht: Man
  • To Windows or not to Windows , that's the question
dag,
ik bijt me al de ganse dag te tanden stuk op volgende  :-[ :
ik wil de inhoud uit een cel toevoegen ALS OPMERKING aan een andere cel in VBA , dat lukt
als ik echter een 2de keer een inhoud (die kan variëren) wil toevoegen aan die zelfde cel dan loopt het mis...
ik heb een macro opgenomen waarbij ik 2 x een opmerking in dezelfde cel toevoeg en dat lukt wél , als ik die Macro laat uitvoeren dan lukt het keer op keer.
als ik echter diezelfde code toevoeg aan een "command button" en daarop klik dan lukt het niet , dan krijg ik een foutmelding (die ik niet begrijp  :-[).
de reden van die "command button" is dat ik de code eerst wilde testen vooraleer ik die ga implementeren in mijn budget programma onder de Command button "validatie".

ik heb 2 screencopy's bijgevoegd , de 1ste zie je dat het gelukt is via de macro (de code van die macro heb ik op het werkblad gezet).
de 2de toont de foutmelding als ik de code wil laten uitvoeren via de command button...

wat ik wil bereiken : checken of een cel (b.v. A1) ingevuld is , zoja deze inhoud toevoegen als opmerking aan een andere cel (deze kan variëren), en ik wil indien nodig NOG EENS de inhoud van cel A1 (die dus kan variëren) toevoegen als 2de opmerking aan die andere cel....

iemand die kan helpen ?

Mvg,
Montagnard.
HP ProBook 450 G3 15 inch
OS : Windows 11 Pro NLD 64bit
Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz
16 GB  Vengeance 2666 MHz
KINGSTON SA400S37480G - 447,13 GB als bootdisk
WD Blue Solid state 2 TB - intern - M.2 2280 - SATA als datadisk
AV: Windows Defender
FW: Windows Firewal

Offline Warme bakkertje

  • Volledig lid
  • **
  • Berichten: 215
  • Geslacht: Man
Ik werk niet met O365 maar volgens de helpfiles lijkt het mij dat het "=" teken er teveel aan is.
Windows 10 Home   NLD 64bit

Microsoft Office Professional Plus 2016 US

Offline JEC

  • Excel-Expert
  • Ervaren lid
  • *****
  • Berichten: 422
Probeer het eens zo. Je kunt pas een comment toevoegen met .add als de cel nog geen opmerking bevat.

Sub j()
With Range("C3")
 If MsgBox("Opmerkingen vervangen?", vbYesNo, "Let op") = vbYes Then
    .ClearComments
    .AddCommentThreaded Range("A1").Value
 Else
    .CommentThreaded.AddReply Range("A2").Value
 End If
End With
End Sub

Offline Montagnard

  • Ambassadeur
  • *****
  • Berichten: 2.385
  • Geslacht: Man
  • To Windows or not to Windows , that's the question
Het Veerj , super ! zo kan ik ook de opmerkingen wissen...
maar heb een aanvullend probleem :
in mijn programma werk ik met "cells (rij , kolom)" ( die cel wordt bepaald door een lus) , hoe ga ik dan tewerk om deze te gebruiken i.p.v. Range ("cel") ?

zou er dus zo moeten uitzien :

With cells (rij, kolom) i.p.v. Range("C3") dus hier zou Range moeten vervangen worden , kan dit ?
 If MsgBox("Opmerkingen vervangen?", vbYesNo, "Let op") = vbYes Then
    .ClearComments
    .AddCommentThreaded Range("I3").Value deze cel is vaste plaats , daar wordt een opmerking ingevuld
 Else
    .CommentThreaded.AddReply Range("I3").Value deze cel is vaste plaats , daar wordt een opmerking ingevuld
 End If
End With

Mvg,
Montagnard.
HP ProBook 450 G3 15 inch
OS : Windows 11 Pro NLD 64bit
Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz
16 GB  Vengeance 2666 MHz
KINGSTON SA400S37480G - 447,13 GB als bootdisk
WD Blue Solid state 2 TB - intern - M.2 2280 - SATA als datadisk
AV: Windows Defender
FW: Windows Firewal

Offline JEC

  • Excel-Expert
  • Ervaren lid
  • *****
  • Berichten: 422
Dat zou geen probleem moeten zijn! Hoe je het nu hebt staan zou al moeten werken dan

Offline JEC

  • Excel-Expert
  • Ervaren lid
  • *****
  • Berichten: 422
Hier nog een leuke als je ooit de opmerkingen wilt ophalen vanuit een specifieke cel ;)

Edit: Auteur van de opmerking er ook naast!

Sub jvr()
 ReDim ar(10, 1)
   With Range("C3").CommentThreaded
        ar(0, 0) = .Text
        ar(0, 1) = .Author.Name
      For Each cmt In .Replies
        ar(j + 1, 0) = cmt.Text
        ar(j + 1, 1) = cmt.Author.Name
        j = j + 1
      Next
   End With
 Sheets(1).Cells(1, 4).Resize(j + 1, 2) = ar
End Sub

Offline Montagnard

  • Ambassadeur
  • *****
  • Berichten: 2.385
  • Geslacht: Man
  • To Windows or not to Windows , that's the question
in mijn geval wordt de opmerking altijd opgehaald uit cel I3 , deze opmerking varieert naargelang de transactie die wordt uitgevoerd..
heb ondertussen Uw 1ste code ingevoegd en werkt PERFECT ! (vergeet mijn vorige opmerking , ik had 2 puntjes "." vergeten te zetten  :-[ ).
waarvoor dikke merci  _/-\o_
Mvg,
Montagnard.
HP ProBook 450 G3 15 inch
OS : Windows 11 Pro NLD 64bit
Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz
16 GB  Vengeance 2666 MHz
KINGSTON SA400S37480G - 447,13 GB als bootdisk
WD Blue Solid state 2 TB - intern - M.2 2280 - SATA als datadisk
AV: Windows Defender
FW: Windows Firewal

Offline JEC

  • Excel-Expert
  • Ervaren lid
  • *****
  • Berichten: 422
Mooizo! ;D

 


www.combell.com