• 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.

verschillende lettergroottes in één cel

Status
Niet open voor verdere reacties.

jagea

Gebruiker
Lid geworden
11 aug 2008
Berichten
48
gebruik de formule =A1&A2.
wil de tekst van A2 in een een kleiner lettertype weergeven.
is het mogelijk om ook het lettertype en de grootte van cel A2 over te nemen?
zo ja, hoe doe ik dat?
zo nee, hoe kan ik dit met VBA regelen?

Al vast bedankt,

Age
 
Verschillen lettertypes en/of groottes in 1 cel is niet mogelijk.

Niels
 
Ja hoor, dat is zeer wel mogelijk.
Alleen is de vraag voor mij wat onduidelijk: enerzijds zeg je dat je in de samengevoegde cel de tekst van A2 in een KLEINER lettertype wil weergeven, en anderzijds zeg je dat je lettertype en grootte (dus hetzelfde lettertype en dezelfde grootte) wil overnemen. Wat is het nu?
 
@Zapatr,

Ik ben zeer benieuwd, altijd leuk om weer iets te leren.



@Popipo,

Ik zie het, vreemd moest pas een stukje dik gedrukt hebben en dat pakte excel niet,
nu probeer ik het weer en het werkt wel.

Niels
 
Laatst bewerkt:
Deze truc (per teken lettergrootte e.d. aanpassen) werkt niet bij samengevoegde tekst.

Ik zou graag bij samenvoegen de lettergrootte van de oorspronkelijke cel willen overnemen (dan maak ik die gewoon kleiner), maar dat doet ie niet.

Age
 
Laatst bewerkt:
Toch maar even zelf geprobeerd in VBA,
Er is dan geen formule meer.

Resultaat in A3.

Code:
Sub Macro1()
Range("A3").Value = Range("A1").Value & " " & Range("A2").Value
    With Range("A3").Characters(Start:=Len(Range("A1").Value) + 1, Length:=Len(Range("A2").Value) + 1).Font
        .Name = Range("A2").Font.Name
        .FontStyle = Range("A2").Font.FontStyle
        .Size = Range("A2").Font.Size
        .Color = Range("A2").Font.Color
    End With
End Sub

Niels
 
Laatst bewerkt:
Niels,
de opmerking ("Toch maar even zelf geprobeerd in VBA") is bezijden de waarheid !!
Ruim vóór jouw laatste bericht hierboven, plaatste ik hier een macro, die ik een poos later verwijderde omdat ik er wat aan wilde wijzigen. In de tijd dat hij er wél stond, heb jij hem gekopieerd. Dat is niet erg, maar de indruk willen wekken alsof je hem zelf hebt geschreven, is niet correct. Het is ook nogal onwaarschijnlijk: eerst melden dat een oplossing voor het probleem niet mogelijk is, en even later met een macro komen die er niet alleen qua inhoud maar ook qua vorm hetzelfde uitziet als de mijne; dat kan geen toeval zijn.
 
Laatst bewerkt:
Bedankt, dit werk prima.

Nu wil ik graag deze macro automatisch laten starten als de waarde in B10 wijzigt. In B10 staat een formule waardoor de waarde soms wijzigt.

Met Private Sub Worksheet_Calculate() loopt de boel vast omdat in de macro zelf ook een waarde wordt gewijzigd (A3) en hij dan steeds opnieuw begint. Hoe kan ik regelen dat Private Sub Worksheet_Calculate() alleen reageert als cel B10 wijzigt?
 
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target = Range("b10") Then
Range("A3").Value = Range("A1").Value & " " & Range("A2").Value
    With Range("A3").Characters(Start:=Len(Range("A1").Value) + 1, Length:=Len(Range("A2").Value) + 1).Font
        .Name = Range("A2").Font.Name
        .FontStyle = Range("A2").Font.FontStyle
        .Size = Range("A2").Font.Size
        .Color = Range("A2").Font.Color
    End With
End If
End Sub

Niels
 
dat werkt niet als de waarde in b10 wijzigt doordat er een formule in staat. Is het ook mogelijk om als range meerdere cellen aan te geven? If Target = Range("b10:f10") Then werkt bij mij niet
 
Code:
If Not intersect(Target ,Range("B10:F10")) is nothing Then

Dat maakt toch niks uit dat de cel door een formule verandert, deze formule wijst naar
ander cellen, dan laat je hem daar toch op reageren.

Niels
 
Als de waarde van b10 nu verandert door een formule dan gebeurt er niets. Oplossing is om worksheet_calculate te gebruiken, maar dan werkt If Not intersect(Target ,Range("B10:F10")) is nothing Then weer niet
 
Als in B10 staat = A1+A2 kun je de macro toch laten reageren op A1 en A2.

Niels
 
Maar dat (= A1+A2 ) staat niet in B10, maar in A3. In B10 staat een formule en als de waarde daarvan wijzigt moet A3 worden aangepast.
 
Laatst bewerkt:
Wat is de formule dan in B10, daar staat toch een verwijzing in naar andere cellen.
Daar laat je de macro dan toch op reageren.

Plaats anders even een voorbeeldbestandje met uitleg.

Niels
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan