• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

inhoud formulebalk als tekst naar MS Word kopiëren met behoud van kleur

Status
Niet open voor verdere reacties.

backnext

Gebruiker
Lid geworden
29 apr 2016
Berichten
176
Hallo
Is het mogelijk om de inhoud van de formulebalk als tekst naar MS Word te kopiëren met behoud van kleur?
 
Misschien als paste-special en dan kiezen voor html? (zit er vaak bij als optie, check of dat nu ook zo is..)
 
Ik neem aan dat je de inhoud van een cel voor ogen had? De formulebalk kent geen opmaak...
En dan is het toch simpelweg ctrl + C in Excel en ctrl + V in Word?
 
Niet gewoon een cel kopiëren en plakken. Maar de formule in de formulebalk met kleur en al. Misschien bestaat er een tooltje om dit te doen? Niet zo belangrijk maar handig. Niemand een tip?
 
Ah, je bedoelt als de formulebalk in de Edit mode staat... Volgens mij is dat niet mogelijk om zo te kopiëren. En eerlijk gezegd zou ik ook niet zomaar weten hoe je in VBA de celadressen uit een formule kan peuteren of herkennen om die dan te kleuren en als tekststring weg te schrijven in een cel met alle kleurtjes. DIE zou dan weer wel te kopiëren zijn...
Even voor mijn nieuwsgierigheid... Waar om wil je dit?
 
O, da's grappig... Dankzij je vraag ben ik toch ff wat gaan Googlen en het blijkt dus niet eens zo moeilijk te zijn om de celadressen uit een formule te halen...
Code:
Function References(rngSource As Range) As Variant
    Dim rngRef As Range
    Dim strTemp As String
    On Error Resume Next
    For Each rngRef In rngSource.Precedents.Cells
        strTemp = strTemp & ", " & rngRef.Address(False, False)
    Next
    If Len(strTemp) = 0 Then strTemp = Mid(strTemp, 3)
    References = strTemp
End Function

Sub ToonCellen()

    MsgBox References(ActiveCell)

End Sub
Met een functie als dit moet een handige helper wel wat kunnen schrijven in VBA om de formule als een tekststring met kleurtjes in een cel te krijgen. Voor mij zit de dag van vandaag er weer op (morgen vroeg uit de veren helaas).
 
Ginger, Bedankt.
Ook nog wat rondgezocht maar niks gevonden.
Ziet er interessant uit. Ik bekijk het morgen.
 
Dit was écht weer zo'n vraag die me niet wilde loslaten. Ik ben er wel weer wijzer door geworden (dat wél). Maar een oplossing ligt voor mij in elk geval niet voor handen. In eerste instantie kwam ik op deze ene regel...
Code:
Sub ToonCellen1()

    MsgBox ActiveCell.Precedents.AddressLocal
    
End Sub
Maar die toont géén bereik die binnen een ander bereik valt. Bijvoorbeeld in deze formule....
Code:
=SUM($A9;$B9:$D9;E$6)
...zal de code slechts 2 bereiken teruggeven
Code:
$A9:$D9;E$6
Deze eigenschap schijnt MS uit efficiency zo geschreven te hebben. Een bereik dat in een ander bereik valt, zal via een UNION worden samengevoegd tot 1 bereik.

Daarentegen ziet deze formule er wél netjes uit...
Code:
=SUM(A13;C13:E13;G13)
Daar krijg je keurig netjes alle 3 de afzonderlijke bereiken
Code:
A13;C13:E13;G13

Mijn slotconclusie is dat ik hier toch niet zoveel mee kan. Een formule splitsen op de puntkomma is een optie, maar bij geneste formules schiet je dan ook weer in de problemen. Helaas pindakaas.... Voor mij stopt het hier.
 
Bedoelt @backnext dat het de formule die in de formulebalk staat wil kopiëren met de kleurtjes die naar de cellen verwijzen?
Zoals bij een lange formule de kleurtjes veranderen van de cellen die benoemd zijn?
Code:
=als([COLOR=#0000ff]a2[/COLOR]="";"';als([COLOR=#daa520]a3[/COLOR]="";"";[COLOR=#00ff00]a4[/COLOR]))

Je krijgt dan ook nog de naam van het blad in kleur waarnaar verwezen wordt.
Ik heb daar tot nu toe ook geen oplossing voor, maar wilde dit even zeker weten.
 
Bedankt Leo,

Er is helaas geen 'Kopiëren als HTML' als dat al zou werken.
Misschien dat er toch nog iemand langs komt met een helder licht.
 
Je kan het werkblad tonen met formules in de opties.
Kopieer dan de cel waar de formule staat.
Plakken Speciaal in Word als 'Afbeelding (enhanced metabestand)'.
of: 'Afbeelding (Windows metabestand)'.
 
Laatst bewerkt:
Opties voor excel - Geavanceerd - Weergaveopties voor dit werkblad - Formules weergeven in cellen in plaats van de berekende resultaten
 
Bedankt om mee te denken.
Iets wat er een beetje op lijkt krijg ik in Notepad++ door de syntaxis dan te zetten op bv. "Tex"
Maar dat is het natuurlijk nog niet.
 
@HSV, @Alphamax, snel schakelen tussen formule en waarde kan je doen met de toetscombinatie Ctrl + ` (de accent Grave naast de 1-toets). Maar dan krijg ik nog in Word niet de kleurtjes geplakt....
 
Laatst bewerkt:
Speciaal voor jou Leo.
Ik werd al bedankt voor het meedenken. :d

Helaas lukt dat schakelen met die combinatie niet, maar geeft niet (hier Ctrl+t).
De cel net zo breed maken als de formule lang is.
Cel kopiëren.
MS Word openen → Menu Start → Plakken → Plakken Speciaal → 'Afbeelding (Windows metabestand)'.

Nu staat bij mij alles in de kleuren zoals in het scherm van Excel of formulebalk.
 
Laatst bewerkt:
@HSV, Als ik dat probeer (plakken speciaal/koppeling plakken/ 'Afbeelding (Windows metabestand)'. Krijg ik de onderstaande foutmelding:

'De gegevens voor de Excel.Sheet.12-koppeling kunnen niet worden verkregen.'
Wat wordt er bedoeld met 'Excel.Sheet.12' ? Ik werk op 'blad1'...
 
Geen 'koppeling plakken', maar het rondje zwart maken bij 'plakken'
 
Als ik dat doe zie ik in het lijstje mogelijke keuzes wel 'Afbeelding (enhanced metabestand)' maar niet 'Afbeelding (Windows metabestand)'. Dat laatste staat bij koppeling plakken. Vandaar...
Ook met 'plakken' / 'Afbeelding (enhanced metabestand)' geen extra kleurtjes. Wel als (rode) tekst.
 
Dan zal het niet in jouw versies werken (hier MS office 2007).
In onderstaande Docx moet het te zien zijn.
 

Bijlagen

Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan