Dodawanie tekstu do komórki za pomocą VBA BEZ usuwania tego, co było już w komórce - excel, vba, excel-vba

Próbuję zmienić to, co jest w komórce pomakro zapełnia je danymi. Na przykład moje makro umieści 750 w komórce. Potrzebuję wtedy umieścić "T" w komórce, po 750, bez kasowania 750. 750 zmieni się za każdym razem kiedy używam makra, więc nie mogę po prostu użyć ActiveCell.FormulaR1C1 = "750 T"

Zawsze będzie to liczba z dodanym "T", chociaż jest w porządku, jeśli jest sformatowana jako tekst.

Odpowiedzi:

4 dla odpowiedzi № 1

Chcesz zachować to, co tam jest i dodać T, więc oto jak:

ActiveCell.Value = ActiveCell.Value & " T"

Możesz zmienić ActiveCell na cokolwiek chcesz.

Całkowicie plagiatowany z @ padawan0007, chociaż odpowiedź była oczywista.

Również muszę zapytać, czy używasz ActiveCell.FormulaR1C1 z konkretnego powodu? Zamiast tego powinieneś użyć .Value, jeśli nie wstawiasz aktualnej formuły.


4 dla odpowiedzi nr 2

Bardziej elastycznym podejściem jest użycie niestandardowego formatu dla takich arbitralnych sufiksów. Na przykład,

ActiveCell.NumberFormat = "#,##0 T;-#,##0 T"

wstawi T, jak chcesz 750 T bez narzutu ponownego uruchamiania makr po zmianie liczby 750. Możesz kopiować, wklejać, sortować i wykonywać zwykłe operacje na takich wartościach komórek bez wpływu na przyrostek T.


Menu