ID tematu: 14577
 |
[Excel 2003] - wklej specjalnie - wartości |
Autor |
Wiadomość |
piteron
Starszy Forumowicz

Posty: 45
|
Wysłany: 18-11-2009, 14:19 [Excel 2003] - wklej specjalnie - wartości
|
|
|
Witam,
Proszę o pomoc w rozszerzeniu funkcjonalności poniższego kodu, który podpięty pod Ctrl+v "wymusza", że wklejane mają być tylko wartości. Chcę aby to makro działało również poprawnie w przypadku, gdy po wybraniu "Wklej specjalnie" otwiera się inne okienko tzn. umożliwia wklejanie jako "Tekst Unicode" oraz jako "Tekst". W tym wypadku ma zostać wybrane jako "Tekst".
Kod: |
Sub WklejWartosci()
If Application.CutCopyMode = xlCopy Then
Selection.PasteSpecial Paste:=xlPasteValues, _
Operation:=xlNone, SkipBlanks:=False, Transpose:=False
End If
End Sub
|
Pozdr. |
|
 | ID posta:
77765
|
|
|
 |
|
|
|
J_B
Excel Expert

Pomógł: 233 razy Posty: 672
|
Wysłany: 18-11-2009, 21:00
|
|
|
Witam
Powinieneś sprawdzić jaki format jest w schowku
Kod: |
Sub Zapytaj()
Dim Formaty
Dim KopFormat
Formaty = Application.ClipboardFormats
For Each KopFormat In Formaty
If KopFormat = xlClipboardFormatText Then
MsgBox "W schowku jest tekst"
End If
Next
End Sub
|
Formatów schowka jest chyba coś ponad 36
więc sprawdzaj jaki format jest w schowku i na tej
podstawie wybieraj sposób wklejania
Janusz |
|
 | ID posta:
77794
|
|
|
 |
|
|
piteron
Starszy Forumowicz

Posty: 45
|
Wysłany: 19-11-2009, 18:41
|
|
|
Zawsze i bezwzględnie ma nastąpić wklejenie "jako tekst" gdyż nic innego w tym skoroszycie nie będzie wklejane (za pomocą Ctrl+v) po za tekstem, z tym, że zależy mi na tym, aby nie przenosiło się formatowanie "źródłowe".
Pozdr. |
|
 | ID posta:
77883
|
|
|
 |
|
|
Tajan

Pomógł: 4001 razy Posty: 8979
|
Wysłany: 19-11-2009, 19:56
|
|
|
Spróbuj tak:
Kod: | Sub WklejWartosci()
If Application.CutCopyMode = xlCopy Then
Selection.PasteSpecial Paste:=xlPasteValues, _
Operation:=xlNone, SkipBlanks:=False, Transpose:=False
Else
On Error Resume Next
ActiveSheet.PasteSpecial Format:="Tekst", _
Link:=False, DisplayAsIcon:=False
On Error GoTo 0
End If
End Sub |
|
|
 | ID posta:
77887
|
|
|
 |
|
|
Quasi
Excel Expert

Pomógł: 142 razy Posty: 1038
|
Wysłany: 19-11-2009, 20:11
|
|
|
Jeszcze jako ciekawostkę podam fakt, że w przypadku gdy korzystasz z angielskiej wersji Excela musisz zmienić wartość parametru Format z "Tekst" na "Text" . |
|
 | ID posta:
77890
|
|
|
 |
|
|
piteron
Starszy Forumowicz

Posty: 45
|
Wysłany: 19-11-2009, 20:30
|
|
|
Niestety :(
Ani "Tekst", ani "Text" - nadal wkleja mi razem z formatem źródłowym.
Pozdr. |
|
 | ID posta:
77892
|
|
|
 |
|
|
Tajan

Pomógł: 4001 razy Posty: 8979
|
Wysłany: 19-11-2009, 20:35
|
|
|
Spróbuj nagrać makro z wklejania i zobacz jaki argument w nim się zapisze. |
|
 | ID posta:
77893
|
|
|
 |
|
|
piteron
Starszy Forumowicz

Posty: 45
|
Wysłany: 19-11-2009, 22:26
|
|
|
Hmm,
Makro dało wynik bardzo podobny:
Kod: |
Sub TestWklejania()
Range("E24").Select
ActiveSheet.PasteSpecial Format:="Tekst", link:=False, DisplayAsIcon:= _
False
End Sub |
Uruchomione "samodzielnie" wkleiło bez formatowania (czyli OK), więc dlaczego nie działa również z tą częścią, która już działała poprawnie? |
|
 | ID posta:
77903
|
|
|
 |
|
|
Tajan

Pomógł: 4001 razy Posty: 8979
|
Wysłany: 20-11-2009, 00:30
|
|
|
Możesz wrzucić skoroszyt z niedziałającym makrem? Może być pusty, ważne aby było w nim makro i nie działało |
|
 | ID posta:
77910
|
|
|
 |
|
|
piteron
Starszy Forumowicz

Posty: 45
|
Wysłany: 24-11-2009, 17:46
|
|
|
W załączeniu przesyłam taki arkusz.
Nie kasuję ;) ale znalazłem bug ! - brakło mi przypisania skrótu Ctrl+v do tego makra :D
DZIĘKI :)
TestCTRLv2.zip
|
Pobierz Plik ściągnięto 57 raz(y) 117.22 KB |
|
|
 | ID posta:
78266
|
|
|
 |
|
|
|