Marcin M.

Marcin M. korporacyjne zwierze

Temat: Makra i Visual Basic

Wielkie dzieki!

Masz racje, oczywiscie wklejalem do Module zamiast wlasciwego arkusza.

Pozdrawiam,
M.
Marcin M.

Marcin M. korporacyjne zwierze

Temat: Makra i Visual Basic

Tak sie zastanawiam czy daloby rade zmodyfikowac to makro.

Dziala prawie perfekcyjnie z drobnym wyjatkiem. Na chwile obecna makro uaktualnia date/czas nawet jezeli sie tylko zmienilo/przesunelo niektore kolumny w pivocie co nie zawsze oznacza ze ktos zrobil Refresh Data.

Zastanawiam sie zatem czy mozna by zmodyfikowac tak zeby dzialalo jedynie jezeli ktos kliknie Refresh Data.

Pozdrawiam,
M.

Temat: Makra i Visual Basic

Hej,

przetestuj to:

Private Sub Worksheet_PivotTableUpdate(ByVal Target As PivotTable)
ActiveSheet.Range("a1").value = Target.RefreshDate
End Sub
Maciej Kraszewski edytował(a) ten post dnia 03.06.11 o godzinie 12:55
Marcin M.

Marcin M. korporacyjne zwierze

Temat: Makra i Visual Basic

Perfect!

Dzieki.

Temat: Makra i Visual Basic

Witam ma prośbę do forumowiczów mam takie makro które działa bez zastrzezeń w excelu 2003 natomiast na moje nie szczęscie na służbowym laptopie mam excela 2000 i to samo makro w tym samym pliku nie działa wyskakuje mi błąd: na żółto:( oto kod makra i miejsce gdzie wyskakuje błąd

Dim nrKol As Integer
Dim sFormula As String

nrKol = 3

Sheets("Przychody").Select

Do While True

Cells(7, nrKol).Select
If (IsDate(ActiveCell.Value)) Then
nrKol = nrKol + 1
Else
Exit Do
End If

Loop

Sheets("RAZEM MAGAZYN").Select
Columns("S:T").Select

W kodzie poniżej wyskakuje mi błąd na żółto!!!!!!!!!

Selection.Replace What:="," & nrKol - 2 & ",", Replacement:="," & nrKol - 1 & ",", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
Range("S2").Select

Columns("V:W").Select
Selection.Replace What:="," & nrKol & ",", Replacement:="," & nrKol + 1 & ",", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False

MsgBox "dane zaktualizowane", vbInformation, "Informacja"
End Sub

Wie ktoś może jak przekształcić to makro aby działo również w wersji excela 2000. Do tej pory wszystkie makra z excela 2003 mi działały na wersji 2000. Proszę o pomoc

Pozdrawiam

Temat: Makra i Visual Basic

Witam,

Mam takie proste makro myślałem że zadziała:(
Sub data()

Range("A1").Select
If WeekDay(ActiveCell.value) = 2 Then
MsgBox "data ok"
Else
MsgBox "brak"
End If
End Sub

W komórce A1 mam date 2011-06-02(rok-miesiąc-dzień) chciałbym aby makro w przypadku gdy w komórce A1 w dacie jest 2 dzień miesiąca zwracało prawdę tzn "data ok" jak to zrobić?

Pozdrawiam
Tomasz Szawan

Tomasz Szawan analityk finansowy

Temat: Makra i Visual Basic

Byłeś blisko :) Zamiast WeekDay zrób Day. WeekDay odnosi się do dni tygodnia, czyli pokazuje, że 2011-06-02 to był czwartek.

Temat: Makra i Visual Basic

dzięki działa:)
Monika M.

Monika M. PROGRAMISTA VBA,
Excel, Access,
Outlook, Word -
SZKOLENIA

Temat: Makra i Visual Basic

Michal Żołyniak:
[...]
Wie ktoś może jak przekształcić to makro aby działo również w wersji excela 2000. Do tej pory wszystkie makra z excela 2003 mi działały na wersji 2000.

Na której konkretnie linijce wyskakuje "błąd na żółto"?
Jaki jest komunikat (po to są komunikaty, żeby je czytać - kto czyta, nie błądzi ;)).
Komunikat może nam powiedzieć, w czym rzecz.

Temat: Makra i Visual Basic

Michal Żołyniak:
Witam,

Mam takie proste makro myślałem że zadziała:(
Sub data()

Range("A1").Select
If WeekDay(ActiveCell.value) = 2 Then
MsgBox "data ok"
Else
MsgBox "brak"
End If
End Sub

W komórce A1 mam date 2011-06-02(rok-miesiąc-dzień) chciałbym aby makro w przypadku gdy w komórce A1 w dacie jest 2 dzień miesiąca zwracało prawdę tzn "data ok" jak to zrobić?

Pozdrawiam
A jak w if zanaczyć zakres dni powiedzmy jeżeli w komórce będzie któryś z dni od 2 do 10 dnia ??

konto usunięte

Temat: Makra i Visual Basic

if a >= 2 and a<= 10 then

end if

Temat: Makra i Visual Basic

Witam jak w adresowaniu względnym komórek przejść do komórki poniżej
jak mam włączony autofiltr

Przykład makra:

Range("S1").Select
Selection.AutoFilter
Range("S1").Select
Selection.AutoFilter Field:=19, Criteria1:=">0", Operator:=xlAnd
Range("S1").Select 'nagłówek autofiltra
'teraz chcę przejść do pierwszej wiersza poniżej S1 ale widocznego w aktywnym filtrze nie do drugiego wiersza w kolumnie S
ActiveCell.Offset(1, 0).Select 'jak to przekształcić??''

Pozdrawiam

konto usunięte

Temat: Makra i Visual Basic

Michal Żołyniak:
Witam jak w adresowaniu względnym komórek przejść do komórki poniżej
jak mam włączony autofiltr

Przykład makra:

Range("S1").Select
Selection.AutoFilter
Range("S1").Select
Selection.AutoFilter Field:=19, Criteria1:=">0", Operator:=xlAnd
Range("S1").Select 'nagłówek autofiltra
'teraz chcę przejść do pierwszej wiersza poniżej S1 ale widocznego w aktywnym filtrze nie do drugiego wiersza w kolumnie S
ActiveCell.Offset(1, 0).Select 'jak to przekształcić??''

Pozdrawiam

a czy Ty w ogóle rozumiesz co robisz w tym VBA?
bez zrozumienia tematu daleko nie zajedziesz, no chyba że będziesz co chwila pytał na forach o rozwiązanie - poponował bym np. zacząć od solidnej nauki np. z książką. Walkenbach jest dobry, polecam

http://helion.pl/autorzy/john-walkenbach,waljoh.htm

Temat: Makra i Visual Basic

Własnie powoli przerabiam tą ksiązke ale czasami wole zapytać aby bylo szybciej.

Pozdrawiam

Temat: Makra i Visual Basic

Witam, mam taką prośbę wie ktoś może jak zmodyfikować tą pętle tak aby w przypadku gdy Else czyli zostanie wybrana kolumna obok aktywnej, makro dodatkwo ustawiało się zawsze w drugiej komórce aktywnej kolumnie

Czyli np.

Sub petla()
Range("A2").Select
Do
If ActiveCell.Value = 0 Or IsEmpty(ActiveCell) Then
ActiveCell.Offset(1, 0).Select
Else
ActiveCell.Offset(0, 1).Select
'tutaj powinien być kod który ustawi się w drugiej komórce wybranej kolumny

If Range("C2").Select Then Exit Do
End If
Loop
ActiveCell.Offset(1, 0).Select
End Sub

Pozdrawiam

konto usunięte

Temat: Makra i Visual Basic

żeby nie dublować selectów bez potrzeby po Else tylko:

Cells(2, ActiveCell.Column + 1).Select

Temat: Makra i Visual Basic

Witam,

Mam taki ciąg znaków -97.633,900 gdy użyje ctr+F i zamienie "." na nic
a także "-" na nic zostaje 97633,9
Pytanie dlaczego po nagrania makra z tą operacją makro po włączeniu przekształca mi ten sam ciąg znaków -97.633,900 na 97 633 900 z czego to wynika???

Nagrany kod :

Sub Makro3()
'
' Makro3 Makro
'

'
Columns("D:E").Select
Selection.Replace What:=".", Replacement:="", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
Selection.Replace What:="-", Replacement:="", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
End Sub

Pozdrawiam
Andrzej Skrzypczak

Andrzej Skrzypczak IT, Freelance,
Sales, Press

Temat: Makra i Visual Basic

Witam, poszukuje makra do excela które będzie usuwało tylko skrajną prawą spację z komórek.
Nie mogę tego zrobić formułą, musi być makro.

konto usunięte

Temat: Makra i Visual Basic

Witam,
po zaznaczeniu odpowiedniego zakresu spróbuj odpalić makro:

Sub Sel()
Dim kom As Range

For Each kom In Selection
kom.Value = RTrim(kom.Value)
Next kom
End Sub

Pozdrawiam.
Andrzej Skrzypczak

Andrzej Skrzypczak IT, Freelance,
Sales, Press

Temat: Makra i Visual Basic

dzięki

Następna dyskusja:

Excel + Visual Basic




Wyślij zaproszenie do