Excel Forum - Porady, Pomoc,  Excel Help, Excel FAQ Strona Główna
 FAQ  RegulaminRegulamin  Szukaj   Użytkownicy   Grupy   Rejestracja   Profil   Twoje wiadomości   Zaloguj 


Poprzedni temat «» Następny temat
Przesunięty przez: tkuchta1
2011-12-17, 14:41
Wstawianie tekstu z TextBox
Autor Wiadomość
przemekm
forumowicz


Posty: 16
Wysłany: 2011-12-17, 14:01   Wstawianie tekstu z TextBox

Witam. Mam pewien problem z makrem. Pewnie okaże się banalny do rozwiązania ale ja jestem całkowicie poszątkujący. Dotyczy Worda.
W załączonym pliku chciałbym, aby teskt wpisany do "TextBox1" po naciśnięciu enter wpisywał się do pola tesktowego (lub czegokolwiek innego w czym da się to zrobić) zaznaczonego strzałką. Jak to zrobić? Może wstawić jakiś inny obiekt zamiast pola tekstowego? :-|

dok2.rar
Pobierz Plik ściągnięto 21 raz(y) 16.7 KB

ID posta: 141201 Skopiuj do schowka
 
 
 

EXCELFORUM.pl POLECA - Bezplatne triki prosto na skrzynke email

tkuchta1 
Excel Expert



Pomógł: 1495 razy
Posty: 2270
Wysłany: 2011-12-17, 14:38   

Kod:
Private Sub TextBox1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
    If KeyCode = 13 Then
        ThisDocument.Shapes("Text Box 2").Select
        Selection.Range.Text = Me.TextBox1
    End If
End Sub


dok2.zip
Pobierz Plik ściągnięto 27 raz(y) 24.51 KB

_________________
Tomek
Moje Artykuły:
Algorytmy Sortujace, Wyrażenia Regularne,
Menadżer Funkcji NextNR, Unikaty


Moja Stronka
APoCoTenExcel
Ostatnia aktualizacja: 2012-03-17
ID posta: 141205 Skopiuj do schowka
 
 

EXCELFORUM.pl POLECA - Bezplatne triki prosto na skrzynke email

master_mix 
Excel Expert



Pomógł: 977 razy
Posty: 1615
Wysłany: 2011-12-17, 17:07   

można też bez select
Kod:
ThisDocument.Shapes("Text Box 2").TextFrame.TextRange.Text = Me.TextBox1.Text

a we właściwościach formy ustawić ShowModal na False
_________________
******************************************
Podejmę współpracę (pracę) w zakresie tworzenia aplikacji arkusza kalkulacyjnego z wykorzystaniem VBA.
Wrocław i okolice …lub zdalnie.
******************************************
ID posta: 141212 Skopiuj do schowka
 
 
szuszana 
EXCELent Man


Pomogła: 38 razy
Posty: 132
Wysłany: 2011-12-17, 17:57   

A może without selection dla tego typu Shape?
Kod:
Private Sub TextBox1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
    If KeyCode = vbKeyReturn Then
         ThisDocument.Shapes("Text Box 2").TextFrame.TextRange.Text = Me.TextBox1
    End If
End Sub
Oraz, masz 1-dną kontrolkę, a gdy będą np. 2 TextBox to co z tabulacją oraz opuszczeniem kontrolki myszką, skoro tylko Enter?
ID posta: 141216 Skopiuj do schowka
 
 

EXCELFORUM.pl POLECA - Bezplatne triki prosto na skrzynke email

przemekm
forumowicz


Posty: 16
Wysłany: 2011-12-17, 19:48   

Dzieki za pomoc, ale dalej nie umiem ruszyc... Skąd wiadomo, że to pole tekstowe ma nazwę "Text Box 2" i jak się to zmienia? Ogólnie chodzi mi o to że miałyby być 4 pola tekstowe i 4 userform'y. Po wejściu do worda pokazuje się pierwsze okienko (userform1), wpisuje coś do textboxa w nim, klikam enter, to co wpisałem pokazuje się w polu tesktowym i otwiera się następne okienko (userform2) i całość powtarza się. Po 4 nacisnięciu enter tekst wpisuje się do ostatniego pola tekstowego, ostatni userform zamyka się i można przejść do normalnej edycji pliku.
ID posta: 141230 Skopiuj do schowka
 
 
 
tkuchta1 
Excel Expert



Pomógł: 1495 razy
Posty: 2270
Wysłany: 2011-12-17, 20:41   

Może się pogrąże tym postem ale co tam :-P Na Word'zie się nie znam to mi wszystko wolno..

"Skąd wiadomo, że to pole tekstowe ma nazwę "Text Box 2" i jak się to zmienia?"
Nazwy textBox'ów określiłbym tak (wykomentowana część to nadawanie nazw)
Kod:
Sub Test()
    Dim objSh As Word.Shape
   
    For Each objSh In ThisDocument.Shapes
        With objSh
            If objSh.Type = msoTextBox Then
                .TextFrame.TextRange.Text = .Name
                'Dim i As Integer: i = i + 1
                '.Name = "txBox" & i
            End If
        End With
    Next
End Sub


"Po wejściu do worda pokazuje się pierwsze okienko "
W mod. ThisDocument masz zdarzenie Document_Open() w nim
Kod:
Private Sub Document_Open()
    UserForm1.Show
End Sub


zastanowiłbym się jednak nad jednym UserForm'em z czterema TextBox'ami.

BTW: TextFrame.TextRange.Text i jak ja miałem to znaleźć :lol:
_________________
Tomek
Moje Artykuły:
Algorytmy Sortujace, Wyrażenia Regularne,
Menadżer Funkcji NextNR, Unikaty


Moja Stronka
APoCoTenExcel
Ostatnia aktualizacja: 2012-03-17
ID posta: 141235 Skopiuj do schowka
 
 

EXCELFORUM.pl POLECA - Bezplatne triki prosto na skrzynke email

szuszana 
EXCELent Man


Pomogła: 38 razy
Posty: 132
Wysłany: 2011-12-17, 21:55   

Dlaczego zaraz pogrążyć, ja też nie znam się na Wordzie, sprawdzam po prostu.
Shape Object Members
Properties.
ID posta: 141237 Skopiuj do schowka
 
 
przemekm
forumowicz


Posty: 16
Wysłany: 2011-12-19, 21:35   

Wielki dzięki za pomoc. Zdecydowałem się na jeden Userform:) Żeby wszystko było gotowe brakuje mi już tylko jednej rzeczy: Chcę na stronie umieścić strzałkę (autokształt w polu tekstowym), która nie będzie widoczna w poglądzie wydruku i nie będzie się drukowała, ale w normalnym trybie będzie widoczna.
ID posta: 141411 Skopiuj do schowka
 
 
 

EXCELFORUM.pl POLECA - Bezplatne triki prosto na skrzynke email

Wyświetl posty z ostatnich:   
Odpowiedz do tematu
Nie możesz pisać nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach
Nie możesz załączać plików na tym forum
Możesz ściągać załączniki na tym forum
Dodaj temat do Ulubionych
Wersja do druku

Skocz do:  

Powered by phpBB modified by Przemo © 2003 phpBB Group
Theme xandgreen created by spleen& Programosy modified v0.3 by warna
Opieka techniczna www.marketingNET.pl

Archiwum