VBA liczby ujemne

0

Witam potrzebuje pomocy mam potrzebę zrobienia VBA w excelu takiego zadania
-pola A1:K20 jako walutowe 2 miejsca po przecinku
-ujemne liczby cyfry jako brązkowy kolor
-przycisk wlutowy na pasku szybkiego dostępu

Na tą chwile mam coś takiego jak niżej

Sub ujemne()
  Dim kolumna As Long, wiersz As Long

  For wiersz = 1 To 10

    For kolumna = 1 To 10

      If Cells(wiersz, kolumna).Value < 0 Then
        Cells(wiersz, kolumna).Interior.ColorIndex = 6
      Else
        Cells(wiersz, kolumna).Interior.ColorIndex = xlNone
      End If

    Next kolumna

Next wiersz
End Sub

0

mam jeszcze taką wersję tylko brakuje mi zeby liczby ujemne wyszykiwał

Sub Walutowe()
'
' Walutowe Makro
'
' Klawisz skrótu: Ctrl+Shift+K
Range("A1:K20").NumberFormat = "#,##0.00 $"
   
Range("A1:K20").Interior.color = rgbBrown
    


    
 
End Sub
0

W kodzie makro ujemne popraw zakres pętli i przenieś ten kod do makro Walutowe.
P.S. cyfra to coś zupełnie innego niż liczba.

0

A w tym przypadku co robie ze

Sub Walutowe()
'
' Walutowe Makro
'
' Klawisz skrótu: Ctrl+Shift+K
Range("A1:K20").NumberFormat = "#,##0.00 $"
   
Range("A1:K20").Value < 0 Then.Interior.color = rgbBrown
    
End Sub

ok

0

Napisałem żebyś przeniósł kod z makro ujemne do makro Walutowe. Zrób to.

0
Sub Walutowe()
'
' Walutowe Makro
'
' Klawisz skrótu: Ctrl+Shift+K
Range("A1:K20").NumberFormat = "#,##0.00 $"
    For kolumna = 1 To 10

      If Range("A1:K20").Value < 0 Then
        Range("A1:K20").Interior.color = rgbBrown
      Else
        Range("A1:K20").Interior.color = rgbBrown
      End If

    Next kolumna

  Next wiersz 
 
End Sub

Kombinuje ale nie zabardzo mi to wychodzi :)

0

Sub Walutowe()
'
' Walutowe Makro
'
' Klawisz skrótu: Ctrl+Shift+K
Range("A1:K20").NumberFormat = "#,##0.00 $"
Dim kolumna As Long, wiersz As Long

For wiersz = 1 To 10

For kolumna = 1 To 10

  If Cells(wiersz, kolumna).Value < 0 Then
    Cells(wiersz, kolumna).Interior.ColorIndex = 6
  Else
    Cells(wiersz, kolumna).Interior.ColorIndex = xlNone
  End If

Next kolumna

Next wiersz

End Sub

w tym przypadku to niewiem gdzie zmienic kolor na brązowy i format walutowy czy odpowiednio zadziała

0

W kodzie makro ujemne popraw zakres pętli i przenieś ten kod do makro Walutowe.

w tym przypadku to niewiem gdzie zmienic kolor na brązowy
w tych komórkach,w których jest liczba ujemna.

0
Sub Walutowe()
'
' Walutowe Makro
'
' Klawisz skrótu: Ctrl+Shift+K
Range("A1:K20").NumberFormat = "#,##0.00 $"
   Dim kolumna As Long, wiersz As Long

  For wiersz = 1 To 10

    For kolumna = 1 To 11

      If Cells(wiersz, kolumna).Value < 0 Then
        Cells(wiersz, kolumna).Interior.color = rgbBrown
      Else
        Cells(wiersz, kolumna).Interior.ColorIndex = xlNone
      End If

    Next kolumna

  Next wiersz
    
 
End Sub
0

Dwie propozycje do wyboru:

Range("A1:K20").NumberFormat = "#0.00 zł;[BROWN]-#0.00 zł"
Range("A1:K20").NumberFormat = "[BROWN][<0]-#0.00 zł;#0.00 zł"
0

jak widać jestem troche zielony w tym czyli w zamiast
Range("A1:K20").NumberFormat = "#,##0.00 $"
skopiować
Range("A1:K20").NumberFormat = "[BROWN][<0]-#0.00 zł;#0.00 zł"

bo wyżuca mi błąd czy usunąć pętle ?

0

wszytko było by oki tylko poza wyznaczoną komórką Range("A1:K20") dalej mi zaznacza tylko odwrotnie kolory czyli brązowy liczby na +

0

Nadal masz zły zakres pętli.
Zajrzałem do zadania, Ty masz zarejestrować makro, a nie napisać makro. Podczas rejestracji użyj formatowania i formatowania warunkowego.

1 użytkowników online, w tym zalogowanych: 0, gości: 1