Anna
Truszkowska
(Czajka)
Wind of change..
konto usunięte
Temat: [excelo pogotowie] typ przechowywanych w komórce wartości...
możesz wkleić ten fragment kodu?
Anna
Truszkowska
(Czajka)
Wind of change..
Temat: [excelo pogotowie] typ przechowywanych w komórce wartości...
Public Sub Odstepy2() 'usuń spacje przed i poDim strWartoscKom, strWynikKom As String
Dim strKolumna
Dim intrekordy, j, i As Integer
intrekordy = 10
intLicznikRek = 2 '1 to naglowek
Do While intLicznikRek <= intrekordy
'od A do AZ
For i = 64 To 65 '.a-.z - zewnętrzna - brak oraz A
For j = 65 To 90 'a.-a. -65-90- wewnętrzne a-z
If i = 64 Then
strKolumna = Chr(j)
Else:
strKolumna = Chr(i) & Chr(j)
End If
If IsError(ActiveSheet.Range(strKolumna & intLicznikRek).Value) = False Then
strWartoscKom = ActiveSheet.Range(strKolumna & intLicznikRek).Value
strWynikKom = Trim(strWartoscKom)
ActiveSheet.Range(strKolumna & intLicznikRek).Value = strWynikKom
If strWartoscKom <> strWynikKom Then
ActiveSheet.Range(strKolumna & intLicznikRek).Interior.ColorIndex = 8 'NIEBIESKI
End If
End If
Next j
Next i
intLicznikRek = intLicznikRek + 1
Loop
End Sub
Anna
Truszkowska
(Czajka)
Wind of change..
Temat: [excelo pogotowie] typ przechowywanych w komórce wartości...
Problem jest wówczas gdy do komórki jest wpisana cyfra "00123" ale typ ustawiony jest na ogólny. Wówczas ucina zera. Chciałabym spytać czy ktoś wie jak można typ przechowywanej w komórce wartości ustawić za pomocą VBA by nie trzeba było każdorazowo robić tego ręcznie..konto usunięte
Temat: [excelo pogotowie] typ przechowywanych w komórce wartości...
Sub TrimSpaces()Dim sel As Range
Dim cel As Range
Set sel = Selection
For Each cel In sel
cel.NumberFormat = "@"
cel.value = trim(cel.value)
Next
End Sub
dla zaznaczenia usuwa zbędne spacje
i dla każdej komórki ustawia format na tekstowy
jezeli było __00123_ to zostaje 00123
Pozdrawiam
TomekTomasz G. edytował(a) ten post dnia 25.05.07 o godzinie 17:33
Anna
Truszkowska
(Czajka)
Wind of change..
Temat: [excelo pogotowie] typ przechowywanych w komórce wartości...
Takie proste :)DZIĘKI :)
konto usunięte
Temat: [excelo pogotowie] typ przechowywanych w komórce wartości...
Anna C.:
Takie proste :)
DZIĘKI :)
Cieszę się że mogłem pomóc :-)
Miłego dnia
Tomek
Marek
Zadęcki
pracownik biurowy i
kadrowy
Temat: [excelo pogotowie] typ przechowywanych w komórce wartości...
Panie Tomku,czy zechciałby mi Pan wyjaśnić, czemu dla przykładu z wpisanej do komórki wartości 80 90 przy użyciu Pana makra nie otrzymuję 8090? Czy w danym arkuszu makro można użyć tylko raz???
Napisał Pan "i dla każdej komórki ustawia format na tekstowy". Czyli po odpaleniu makra wszystkie komórki mają format tekstowy?
Czy mógłbym prosić Pana lub kogoś ze znakomitych znawców Excela o podanie kodu makra, które zarówno dla tekstu jak i dla cyfr usuwa zbędne spacje tzn.
tekst "to jest__Ola" otrzymam "to jest Ola"
liczba 7 9 8 otrzymam 798.
Marek
Zadęcki
pracownik biurowy i
kadrowy
Temat: [excelo pogotowie] typ przechowywanych w komórce wartości...
Panie Tomku,czy zechciałby mi Pan wyjaśnić, czemu dla przykładu z wpisanej do komórki wartości 80 90 przy użyciu Pana makra nie otrzymuję 8090? Czy w danym arkuszu makro można użyć tylko raz???
Napisał Pan "i dla każdej komórki ustawia format na tekstowy". Czyli po odpaleniu makra wszystkie komórki mają format tekstowy?
Czy mógłbym prosić Pana lub kogoś ze znakomitych znawców Excela o podanie kodu makra, które zarówno dla tekstu jak i dla cyfr usuwa zbędne spacje tzn.
tekst "to jest__Ola" otrzymam "to jest Ola"
liczba 7 9 8 otrzymam 798.
Wojciech
M.
Senior Software
Engineer | Data
Science Team at
Analyx®
Temat: [excelo pogotowie] typ przechowywanych w komórce wartości...
Marek Z.:
Panie Tomku,
czy zechciałby mi Pan wyjaśnić, czemu dla przykładu z wpisanej do komórki wartości 80 90 przy użyciu Pana makra nie otrzymuję 8090?
Panie Marku,
Funkcja VBA Trim usuwa zbędne spacje jedynie na początku i na końcu tekstu. Natomiast funkcja Excela Trim (Usuń.Zbędne.Odstępy) usuwa zbędne spacje także pomiędzy słowami. Żadna z tych funkcji nie usunie jednak spacji z "80 90", ponieważ wartość ta jest traktowana nie jako liczba, lecz jako tekst, 2 słowa oddzielone spacją.
Czy w danym arkuszu makro można użyć tylko raz???
Makro można użyć wiele razy w danym arkuszu.
Napisał Pan "i dla każdej komórki ustawia format na tekstowy". Czyli po odpaleniu makra wszystkie komórki mają format tekstowy?
Tak, odpowiada za to poniższa linia, którą może Pan zakomentować, jeżeli będzie miał Pan taką potrzebę.
cel.NumberFormat = "@"> Czy mógłbym prosić Pana lub kogoś ze znakomitych znawców
Excela o podanie kodu makra, które zarówno dla tekstu jak i dla cyfr usuwa zbędne spacje tzn.
tekst "to jest__Ola" otrzymam "to jest Ola"
liczba 7 9 8 otrzymam 798.
Musimy w pewien sposób określić, czy potraktować daną wartość jako tekst czy liczbę. Jednym z rozwiązań jest sprawdzenie, czy wszystkie znaki w tekście są cyfrą lub spacją - jeżeli tak to usuwamy wszystkie spacje, jeżeli nie to usuwamy jedynie zbędne spacje funkcją Trim Excela. Zamieszczam to rozwiązanie poniżej.
Sub TrimSpaces()
Dim sel As Range
Dim cel As Range
Dim i As Long
Dim isString As Boolean
isString = False
Set sel = Selection
For Each cel In sel
For i = 1 To Len(cel.Value)
If Not (Mid(cel.Value, i, 1) = " " Or IsNumeric(Mid(cel.Value, i, 1))) Then
isString = True
Exit For
End If
Next i
cel.NumberFormat = "@"
If (isString = True) Then
cel.Value = Application.WorksheetFunction.Trim(cel.Value)
isString = False
Else
cel.Value = Replace(cel.Value, " ", "")
End If
Next cel
End Sub
Marek
Zadęcki
pracownik biurowy i
kadrowy
Temat: [excelo pogotowie] typ przechowywanych w komórce wartości...
Bardzo serdecznie dziękuję za wyjaśnienie. Pana makro działa aż miło.Prawdziwe jest stwierdzenie, że: Człowiek uczy się od narodzin do śmierci i... zawsze jest coś o czym nie będzie wiedział". Dobrze, że są ludzie, którzy mogą i chcą pomóc bezinteresownie.
Marek
Zadęcki
pracownik biurowy i
kadrowy
Temat: [excelo pogotowie] typ przechowywanych w komórce wartości...
Bardzo serdecznie dziękuję za wyjaśnienie. Pana makro działa aż miło.Prawdziwe jest stwierdzenie, że: Człowiek uczy się od narodzin do śmierci i... zawsze jest coś o czym nie będzie wiedział". Dobrze, że są ludzie, którzy mogą i chcą pomóc bezinteresownie.
Podobne tematy
-
Fani Excela » [excelo pogotowie] numer strony w dowolnej komórce -
-
Fani Excela » do moderatora grupy w sprawie organizacyjnej - Excelo... -
-
Fani Excela » problem z pobieraniem wartości z innego arkusza vba za... -
-
Fani Excela » VBA wyszukiwanie po fragmencie tekstu w komórce? -
-
Fani Excela » Odwołanie do innego arkusza za pomocą wartości w komórce -
-
Fani Excela » [excelo pogotowie] - formatowanie wykresu przestawnego -
-
Fani Excela » [excelo pogotowie] zamiana PESEL na datę urodzenia -
-
Fani Excela » [excelo pogotowie] słownie liczby -
-
Fani Excela » Excel VBA a rynek pracy -
-
Fani Excela » WYSZUKAJ.PIONOWO - nazwa zakresu z wartości komórki -
Następna dyskusja: