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

  tytuł wątku:
Wątki dyskusji

Kopiowanie zakresu OD DO


otwartyotwarty rozpoczął: 0jack0 postów: 5



napisał: 0jack0
postów: 24


umieszczony:
29 października 2007
08:51

  
Dziękuje.

Działa.

RYCHU DZIĘKI JESTEŚ WIELKI
napisał: r_c
postów: 38


umieszczony:
25 października 2007
16:47

  
Cytat:

'scalaj z Arkusz1 do Arkusz2

Sprawdż nazwy arkuszy
r_c
napisał: 0jack0
postów: 24


umieszczony:
25 października 2007
13:47

  
nazwa pliku rozmiar
error.jpg 21.28 kB

Rychu,

Coś nie tak z tym kodem czy ja coś źle robię. Pojawił się błąd error 9 : Subscript out of range
Dodałem zrzut jakbyś mógł swoim fachowym okiem rzucić byłbym wdzięczny.
napisał: Rycho
postów: 291


umieszczony:
25 października 2007
01:59

  
Witam,
przykładowe makro:
'scalaj z Arkusz1 do Arkusz2
Sub scalaj()
  Dim rgS As Range, rgD As Range
  Dim s As String, wpis As String

  On Error GoTo Error_scalaj
  '1-sza komórka źródłowa

  Set rgS = Worksheets("Arkusz1").Range("A1")

  '1-sza komórka docelowa
  Set rgD = Worksheets("Arkusz2").Range("A1")

  'zawartość 1-szej i 2-giej komórki
  wpis = rgS
  Set rgS = rgS.Offset(1, 0)
  s = rgS

  'powtarzaj aż napotkasz pustą komórkę
  Do
    'zapisz jeśli 'pk' w komórce
    If InStr(1, s, "pk") > 0 Then
      'zapisz
      rgD = wpis
      'kolejny wiersz wpisu
      Set rgD = rgD.Offset(1, 0)
      '1-sza częśc wpisu zawierająca 'pk'
      wpis = s
    Else
      'dodaj kolejny wyraz
      wpis = wpis & " " & s
    End If

    Set rgS = rgS.Offset(1, 0)
    s = rgS

  Loop While s <> ""

  'zapis ostatniego wiersza
  rgD = wpis

Exit_scalaj:
  On Error Resume Next

  Exit Sub

Error_scalaj:
  MsgBox "Error: " & Err.Number & " ( " & Err.Description & " )" & vbCrLf & _
      vbCrLf & "Procedure: scalaj", vbExclamation
  Resume Exit_scalaj
End Sub

napisał: 0jack0
postów: 24


umieszczony:
22 października 2007
16:38

  
W jaki sposób skopiować dane z kilku wierszu do jednej wiersza wiedząć że dana linia zaczyna się od wyrażenia PK. Dodam że ilośc lini nie jest stała.

01pk 11
22
33
44
02pk 22
222
333
444
555


Efekt VBA byłby taki


01pk 11 22 33 44
02pk 222 333 444 555

Z góry dzięki wszystkim za odpowiedzi.


<-wstecz  1  dalej->
wszystkich stron: 1


Sortuj posty: z