vbamania.pl
login:
hasło:
 
  *Rejestracja *Zapomniane hasło
 Dziś jest sobota, 11 maja 2024 roku.
Ustaw jako stronę startową Ulubione Napisz
PowrótPowrót do serwisu  RegulaminRegulamin rssRSS

  tytuł wątku:
Wątki dyskusji

Komunikat MsgBox oraz zmienna


otwartyotwarty rozpoczął: derla postów: 2



napisał: Trebor
postów: 1209


umieszczony:
20 kwietnia 2012
17:16

  
Po pierwsze sprawdzenie czy komórka jest wypełniona czy też nie, to za mało jeśli nie używasz innych mechanizmów, które nie pozwalają wpisać do komórki np. text

Sprawdzenie czy wszystkie komórki są wypełnione można sprawdzić mnożąc je wszystkie przez siebie. Jeśli wynik będzie większy od zera to znaczy, że jakaś wielkość została im nadana. Chociaż dwie komórki mogą mieć wartość ujemną, ale to już zbytnia lub nie ostrożność przed złą wolą użytkownika.

To sprawdzanie przez if i elseif całkiem udane.

Co do ostatniego to można tak:
stała_zależność = Int(([j8] - 2.5) / 0.3)

napisał: derla
postów: 1


umieszczony:
20 kwietnia 2012
10:51

  
witam serdecznie,
Tworze narzędzie w excelu za pomoca vba ale dopiero się ucze tego (po raz pierwszy mam do czynienia z tym. I powstały mi 2 problemy. Będę bardzo bardzo wdzięczna za pomoc lub jakieś wskazówki
1) Komnikat Msg Box
Mam pytanie, czy istnieje możliwość stworzenia komunikatu:

"Długośc, szerokość, wysokość są danymi koniecznymi, proszę wypełnić brakujące pola!!

Nie wiem jak to zapisać w VBA, czy taki zapis będzie właściwy
If ("f8")="" or ("j8")="" or ("d21:d25")="" or ("c10")="" then
msgbox="Długośc, szerokość, wysokość są danymi koniecznymi, proszę wypełnić brakujące pola!!"



Chodzi mi dokładnie o to, że jezeli użytkownik nie wypełni któregoś z tych pol wymaganych excel ma wyswietlić komunikat, nie pozwolić na wyliczenie.

dodam jeszcze, że musi się gdzieś się to znależć wśród tych komunikatów:
Case 1
If szerokość > 4.45 Then
MsgBox "Skontaktuj się z biurem, dopuszczalna szerokość 4,45m została przekroczona !", vbInformation, "UWAGA!"
ElseIf długość > 27 Then
MsgBox "Skontaktuj się z biurem, dopuszczalna długość 27m została przekroczona !", vbInformation, "UWAGA!"
ElseIf wysokość > 4.45 Then
MsgBox "Skontaktuj się z biurem, dopuszczalna wysokość 4,45m została przekroczona !", vbInformation, "UWAGA!"
ElseIf naciski_na_osie > 10.5 Then
MsgBox "Skontaktuj się z biurem, dopuszczalny nacisk na osie 10,5t został przekroczony !", vbInformation, "UWAGA!"
Else
wynik = Format((.Range("j8") * Sheets("Dane").Range("e2") * .Range("f8")) / 2.6, "0.00 SEK")
End If



Nie wiem gdzie to wrzucić i czy da taki rezultat jaki bym chciała
2) wrzucenie zmiennej do obliczeń, która będzie miała stałą zależność
w jednym z moich case musze umieścić coś takiego:
wynik = Format((Sheets("Arkusz2").Range("B10") + stała_zależność * 0.1 * Sheets("Arkusz2").Range("B10")), "0.00 SEK")


Chodzi mi tu o tą stałą zależność, czy mam ją jako zmienną zdeklarować
Dim stała_zależność as integer
Stała_zależność=("j8" - 2.50)\0.30 ' dodam tu, że wynik musi być jako liczba całkowita więc uzyłam chyba odpowiedniego znaku dzielenia. Pytanie tylko czy jak wynik wyjdzie 1,66 to odda i przyjmi mi do wyliczeń 1 czy już 2? Bo mi zależy na ty aby oddał 1, czyli ma brać do wyliczeń to co przed przecinkiem



Czy jeśli tak zdeklaruje będzie ok?
Generalnie dodzi o to , że za każde 30 cm szerokości jest pobiere 10% od ceny. Wiec gdybym miała rozpisać wszystkie możliwości z tą szerokością tą serokością t[/center] byłoby masę pracy :(

Mam nadzieję, że da się to jakoś w ten sposób zrobić
Bardzo proszę o pomoc i dziękuję


<-wstecz  1  dalej->
wszystkich stron: 1


Sortuj posty: z