VBA EXCEL

Wątek przeniesiony 2021-01-28 13:32 z Inne języki programowania przez cerrato.

P1
  • Rejestracja:ponad 4 lata
  • Ostatnio:około 3 lata
  • Postów:4
0

Witajcie

Przepraszam od razu za swój brak wiedzy jestem pierwszy raz na forum.

Stworzyłem sobie makro, które wykonuje kilka czynności
Punktem odniesienia jest "Komorka"

‚ ActiveSheet.Range(Komorka).Value = Cells.Range(Komorka).Value

‚ActiveSheet.Range(Komorka).Offset(0, 1).Value = Cells.Range(Komorka).Offset(0, 3).Value

‚ActiveSheet.Range(Komorka).Offset(0, 3).FormulaR1C1 = "=ROUND(RC[-1]*RC[-5],2)"

‚ActiveSheet.Range(Komorka).FormulaR1C1 = "=" & Cells.Range(Komorka).Value & "+RC[3]"

Problem tylko jest taki:

Jeżeli wartość "Komorka" jest liczbą całkowitą instrukcja

‚ActiveSheet.Range(Komorka).FormulaR1C1 = "=" & Cells.Range(Komorka).Value & "+RC[3]"

tworzy formułę, w której zamienia starą wartość "Komorka" zamienia na liczbę i dodaje do niej wartość komórki "+RC[3]"

Natomiast jeżeli wartość komórki nie jest liczbą całkowitą wyrzuca błąd:

Run-time error ' 1004' :
Application defined or object defined error

Prośba o pomoc

edytowany 1x, ostatnio: Pawel1974
Tasmanian Devil
Hej! Twój post prawdopodobnie zawiera niesformatowany kod. Użyj znaczników ``` aby oznaczyć, co jest kodem, będzie łatwiej czytać. (jestem botem, ta akcja została wykonana automatycznie, prawdopodobieństwo 0.9949698)
MV
  • Rejestracja:około 6 lat
  • Ostatnio:ponad 4 lata
  • Postów:4
0

Jeśli potrzebujesz liczby zmiennoprzecinkowej użyj zmienej
Currency liczba z ustaloną kropką dziesiętną 8 bajtów

edytowany 1x, ostatnio: MichalVB6Widzew
Marcin.Miga
  • Rejestracja:prawie 17 lat
  • Ostatnio:4 dni
  • Postów:2792
0

@Pawel1974: obsłuż błąd.
On Error...

P1
  • Rejestracja:ponad 4 lata
  • Ostatnio:około 3 lata
  • Postów:4
0
MichalVB6Widzew napisał(a):

Jeśli potrzebujesz liczby zmiennoprzecinkowej użyj zmienej
Currency liczba z ustaloną kropką dziesiętną 8 bajtów

Niestety wywala ciągle ten sam błąd

P1
  • Rejestracja:ponad 4 lata
  • Ostatnio:około 3 lata
  • Postów:4
0
Marcin.Miga napisał(a):

@Pawel1974: obsłuż błąd.
On Error...

Niestety błędu nie wyrzuca ale nie wpisuje formuły

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.