Wpis z mikrobloga

@fenix7557:
Sub test1()
On Error GoTo koniec
Dim komorka As String
Dim poczatek As String
Dim koniec As String
Dim wartoscStart
Dim wartoscKoniec
Dim dlugoscTekstu
start = "["
koniec = "]"
komorka = ActiveCell.Value2
wartoscStart = InStr(1, komorka, start, vbTextCompare)
wartoscKoniec = InStr(1, komorka, koniec, vbTextCompare)
If wartoscStart <> 0 Then
dlugoscTekstu = (wartoscKoniec - wartoscStart) + 1
ActiveCell.Characters(start:=wartoscStart, Length:=dlugoscTekstu).Font.FontStyle = "pogrubiony"
End If
koniec:
End Sub

To jest makro dla
@reneq16: O stary, dzięki za wysiłek w pisaniu makro. Ja to tak z ciekawości zapytałem dla lepszego porządku swoich danych których zapisuję. Myślałem raczej o czymś takim, że wpisuje do komórek tekst i excel automatycznie formatuje sposób wyświetlania tego, żeby [TAGI] były w tekście pogrubione, ale reszta tekstu w komórce normalna. Czyli podobnie jak to jest z wbudowanym typem walutowym. Wpisuję do komórki 120, excel wyświetla to jako "120,00 zł" ;).
@reneq16: Miałem na myśli początkowo jakieś wyrażenie regularne dla wszystkich tagów w tekście, ale tak na prawdę i tak używam tylko jednego na początku tekstu więc spoko :D
[TAG] jakiś tekst


@fenix7557: dla tekstu który jest w A1 i niżej po przeciągnięciu

=ZŁĄCZ.TEKSTY(LITERY.WIELKIE(FRAGMENT.TEKSTU(A1;ZNAJDŹ("[";A1);ZNAJDŹ("]";A1;ZNAJDŹ("[";A1))));FRAGMENT.TEKSTU(A1;ZNAJDŹ("]";A1;ZNAJDŹ("[";A1))+1;DŁ(A1)-ZNAJDŹ("]";A1;ZNAJDŹ("[";A1))+1))
@fenix7557: To wieczorkiem mogę zrobić dla zaznaczonego zakresu.
Chyba, że wolisz, żeby automatycznie zmieniało to dla wprowadzanej komórki?

A właśnie - polecam się dla Warszawy, korepetycje i konsultacje z excela :)
@fenix7557: ja miałem okazję się kiedyś zajmować trochę podobnym zadaniem - chodziło o to, żeby tekst wprowadzany w komórce traktowany był jako HTML. Czyli w tym wypadku zamiast [,] można było pogrubiać używając tagów **,<\b>. Znalazłem 2 możliwe rozwiązania, każde miało jakieś wady, ale działało to w miarę przyzwoicie.
@fenix7557: Masz dwie wersje - pierwsza ZamienWszystkieTagiWZakresie, to makro które wykonywać musisz ręcznie i zamienia ono wszystkie tagi w dowolnym zakresie, który zaznaczysz. Druga wersja jest na potrzeby zmian dokonywanych w arkuszu i działa to tak: wpisujesz sobie nową komórkę i tam dajesz jakiś tekst w kwadratowych nawiasach. Ta część: **Private Sub Worksheet_Change(ByVal Target As Range)** wywołuje naszą drugą wersję za każdym razem, kiedy zmienisz coś w jakiejkolwiek komórce w arkuszu