 |
Forum Oficjalnego Klubu Mitsubishi - MitsuManiaki
|
|
Ogłoszenie |
W myśl ustawy RODO, akceptując regulamin wyrażasz zgodę na gromadzenie i przetwarzanie swoich danych osobowych w celach związanych z przyznaniem dostępu do forum / wstąpieniem do klubu. Administratorem danych jest Oficjalny Klub Mitsubishi - MitsuManiaki
Jeśli nie akceptujesz powyższych informacji, prosimy o kontakt z Administracją w celu usunięcia konta.
|
VBA EXCEL - prośba o poprawiene makro |
Autor |
Wiadomość |
igi
Mitsumaniak
Auto: Lancer Kombi 1.6 Invite
Kraj/Country: Polska
Pomógł: 2 razy Dołączył: 22 Mar 2005 Posty: 3765 Skąd: innąd
|
Wysłany: 15-01-2010, 13:26 VBA EXCEL - prośba o poprawiene makro
|
|
|
Hej
Na naszym ukochanym forum bawimy się w typowanie wyników meczy. Wcześniej prowadził to Śruba i liczył ręcznie ale to roboty kupa i miał już dość. Przejąłem ja liczenie i kilka innych rzeczy sobie ułatwiłem za pomocą różnych makr i funkcji.
Została jeszcze 1 rzecz: (poniżej funkcyjka)
Sub analiza()
Dim i As Long, tekst As String
For i = 2 To Cells(Rows.Count, 1).End(xlUp).Row
tekst = Cells(i, 1)
tekst = Replace(tekst, ":", "-") 'zamiana dwukropka na pauze
If InStrRev(tekst, " ") > 0 Then Mid(tekst, InStrRev(tekst, " ")) = ";" 'zamiana ostatniej spacji na ;(pauze)
poz = InStr(tekst, ";")
Range(Cells(i, 2), Cells(i, 2)) = Val(Left(Right(tekst, Len(tekst) - poz), InStr(Right(tekst, Len(tekst) - poz), "-") - 1))
Range(Cells(i, 3), Cells(i, 3)) = Val(Mid(Right(tekst, Len(tekst) - poz), InStr(Right(tekst, Len(tekst) - poz), "-") + 1))
' Range(Cells(i, 2), Cells(i, 2 + Len(tekst) - Len(Replace(tekst, "-", "")))) = Split(tekst, "-")
If Cells(i, 1).Font.Bold = True Then Cells(i, 4) = "X"
Next i
'End With
'Next arkusz
End Sub
I teraz prośba: Jak zrobić z tego żeby to działało we wszystkich Arkuszach a nie tylko w 1 |
|
|
|
 |
jawlo
Forumowicz
Auto: SS DiD mint silver
Kraj/Country: Polska
Pomógł: 17 razy Dołączył: 09 Sty 2006 Posty: 1196 Skąd: Beskidy
|
Wysłany: 16-01-2010, 12:23 Re: VBA EXCEL - prośba o poprawiene makro
|
|
|
Naniesione zmiany są pogrubione. Nie mam możliwości przetestować to bez danych wejściowych.
Sub analiza()
Dim i As Long, tekst As String
'uzyskanie liczby arkuszy
SheetCount = ActiveWorkbook.Sheets.Count
For j = 1 To SheetCount
For i = 2 To Sheets(j).Cells(Rows.Count, 1).End(xlUp).Row
tekst = Sheets(j).Cells(i, 1)
tekst = Replace(tekst, ":", "-") 'zamiana dwukropka na pauze
If InStrRev(tekst, " ") > 0 Then Mid(tekst, InStrRev(tekst, " ")) = ";" 'zamiana ostatniej spacji na ;(pauze)
poz = InStr(tekst, ";")
Range(Sheets(j).Cells(i, 2), Sheets(j).Cells(i, 2)) = Val(Left(Right(tekst, Len(tekst) - poz), InStr(Right(tekst, Len(tekst) - poz), "-") - 1))
Range(Sheets(j).Cells(i, 3), Sheets(j).Cells(i, 3)) = Val(Mid(Right(tekst, Len(tekst) - poz), InStr(Right(tekst, Len(tekst) - poz), "-") + 1))
' Range(Cells(i, 2), Cells(i, 2 + Len(tekst) - Len(Replace(tekst, "-", "")))) = Split(tekst, "-")
If Sheets(j).Cells(i, 1).Font.Bold = True Then Sheets(j).Cells(i, 4) = "X"
Next i
Next j
'End With
'Next arkusz
End Sub |
|
|
|
 |
igi
Mitsumaniak
Auto: Lancer Kombi 1.6 Invite
Kraj/Country: Polska
Pomógł: 2 razy Dołączył: 22 Mar 2005 Posty: 3765 Skąd: innąd
|
Wysłany: 16-01-2010, 19:35
|
|
|
jawlo, <wow>
Dzięki prawie działa ale i tak dużo pomogło.
Resztę dopytam jak mogę na gg . Dzięki jeszcze raz
Sorki mój błąd. Działa wyśmienicie |
|
|
|
 |
igi
Mitsumaniak
Auto: Lancer Kombi 1.6 Invite
Kraj/Country: Polska
Pomógł: 2 razy Dołączył: 22 Mar 2005 Posty: 3765 Skąd: innąd
|
Wysłany: 02-04-2010, 10:24
|
|
|
jawlo, jeszcze jedna prośba o makro które usuwa końcowe i początkowe spacje we wszystkich arkuszach. Dało by się jak byś miał wolną chwilę? |
|
|
|
 |
|
|