Zum Inhalt springen

Visual Basic Problem Bitte Hilfen


Paradaxon

Empfohlene Beiträge

Hallo People,

ich habe einen problem : und zwar,

mmmm ich habe ein Code für Makro, mit um Word zu benutzen,

hier ist der CODE

Sub Makro1()

'

' Makro1 Makro

'

'

For Each aWord In ActiveDocument.Words

If (aWord.Text <> vbCr) And (aWord.Text <> "; ") And (aWord.Font.Spacing <> 2) Then

aWord.Select

Selection.Copy

Selection.MoveRight Unit:=wdCharacter, Count:=1

Selection.TypeText Text:="; "

Selection.PasteAndFormat (wdPasteDefault)

Selection.MoveLeft Unit:=wdWord, Count:=1, Extend:=wdExtend

Selection.Range.Case = wdUpperCase

Selection.Font.Spacing = 2

End If

Next aWord

Selection.EndKey Unit:=wdLine

End Sub

ICH möchte gerne wissen wie kann ich Space Funktion bauen, z.b

Deutschland ist normal Wort,

der CODE zeigt : Deutschland; DEUTSCHLAND

bitte Hilfe wegen Spacing damit ich so bekommen kann:

Deutschland; D E U T S C H L A N D

Vielen dank

:upps

Link zu diesem Kommentar
Auf anderen Seiten teilen

  • 2 Wochen später...

mit mid$ kannst du einfach vergessen

Hilft nicht...

komm lets see :

hier steht ein CODE, test it und lösch mal die fontspacing,

und wenn du Mid$ benutzt, mach mal bitte und lass diese Wort mit leerzeichen.

Original : Germany, muss nach Germany ; kommen und dann kopiert,

dann hast du germany; germany, dann großbuchstaben, alles schon erledigt

dann wenn du kannst : Leerzeichen , dann hast du

G E R M A N Y, und nicht font spacing.

hier ist der Code:

Sub Makro1()

'

' Makro1 Makro

'

'

Selection.HomeKey Unit:=wdLine

Selection.EndKey Unit:=wdLine, Extend:=wdExtend

Selection.Copy

Selection.EndKey Unit:=wdLine

Selection.TypeText Text:="; "

Selection.PasteAndFormat (wdPasteDefault)

Selection.TypeBackspace

Selection.MoveLeft Unit:=wdWord, Count:=1, Extend:=wdExtend

Selection.Range.Case = wdUpperCase

Selection.Font.Spacing = 2

Selection.MoveDown Unit:=wdLine, Count:=1

End Sub

kannst du ?:upps

Link zu diesem Kommentar
Auf anderen Seiten teilen

mit mid$ kannst du einfach vergessen

Hilft nicht...

Doch, die Mid-Anweisung ist eine Möglichkeit, das zu machen. Wenn das bei dir "nicht hilft", dann machst du etwas falsch.

Zeig uns, was du damit gemacht hast, dann sagen wir dir, was falsch ist.

Mid Statement

Um Zeichen einzufügen statt zu ersetzen, musst du für den Length-Parameter 0 angeben.

Link zu diesem Kommentar
Auf anderen Seiten teilen

ich habe alles gelöscht, es war für mich VIEL,

ich mache gerade Dualstudium, und bin Neu,

kannst du bitte das für mich machen?

ich habe keine Ahnung von diese SACHEN .

bitte

jetzt bin ich wieder hier :

Sub Makro2()

'

' Makro2 Makro

'

'

For Each aWord In ActiveDocument.Words

If (aWord.Text <> vbCr) And (aWord.Text <> "; ") And (aWord.Font.Spacing <> 2) Then

aWord.Select

Selection.Copy

Selection.MoveRight Unit:=wdCharacter, Count:=1

Selection.TypeText Text:="; "

Selection.PasteAndFormat (wdPasteDefault)

Selection.MoveLeft Unit:=wdWord, Count:=1, Extend:=wdExtend

Selection.Range.Case = wdUpperCase

Selection.Font.Spacing = 2

End If

Next aWord

Selection.EndKey Unit:=wdLine

End Sub

versuch mal bitte,

LG

Ori

Link zu diesem Kommentar
Auf anderen Seiten teilen

kannst du bitte das für mich machen?

ich habe keine Ahnung von diese SACHEN .

Und daran wird sich auch nichts ändern, wenn du es nicht selbst machst.

Aber mal etwas Grundsätzliches: Dein Code sieht so aus, als ob du versuchst, Word fernzusteuern. Das ist meiner Meinung nach unnötig kompliziert.

Steck den Text der Selection in eine Variable. Wandle sie in Großbuchstaben um (UCase), dann füg in einer Schleife mit Mid die Leerzeichen ein.

Danach schreibst du den Inhalt der Variablen zurück in die Selection.

Link zu diesem Kommentar
Auf anderen Seiten teilen

ich habe alles gelöscht, es war für mich VIEL,

ich mache gerade Dualstudium, und bin Neu,

kannst du bitte das für mich machen?

ich habe keine Ahnung von diese SACHEN .

ein Studium ist aber nicht dafür da, dass andere Leute deine Aufgaben erledigen. Immerhin sollst du was lernen.

Schließe mich meinen Vorpostern an: Lies dir die Hilfe durch und probiere damit aus. Wenn du dann Fehler bekommst, helfen wir gerne, aber wir werden nicht deine Aufgaben komplett erledigen.

Link zu diesem Kommentar
Auf anderen Seiten teilen

good, wie findest du es jetzt ?

Sub Makro5()

'

' Makro5 Makro

'

'

For Each aWord In ActiveDocument.Words

If (aWord.Text <> vbCr) And (aWord.Text <> "; ") And (aWord.Font.Spacing <> 2) Then

aWord.Select

Selection.Copy

Selection.MoveRight Unit:=wdCharacter, Count:=1

Selection.TypeText Text:="; "

Selection.PasteAndFormat (wdPasteDefault)

Selection.MoveLeft Unit:=wdWord, Count:=1, Extend:=wdExtend

Selection.Range.Case = wdUpperCase

Selection.Font.Spacing = 2

End If

Dim spaceString$

For I = 1 To Len(aWord)

spaceString = spaceString + Mid$( aWord, i, 1) + ' '

Next I

Tri*** (spaceString)

Next aWord

Selection.EndKey Unit:=wdLine

End Sub

Link zu diesem Kommentar
Auf anderen Seiten teilen

ich habe geschaft:

Test it:

Sub Makro6()

Dim strTest As String

Dim test As Integer

Dim counter As Integer

For Each aWord In ActiveDocument.Words

If (aWord.Text <> vbCr) And (aWord.Text <> "; ") Then

counter = counter + 1

Selection.EndKey Unit:=wdLine

End If

Next

Do While (counter > 0)

Selection.HomeKey Unit:=wdLine

Selection.EndKey Unit:=wdLine, Extend:=wdExtend

strTest = Selection

Selection.Copy

Selection.EndKey Unit:=wdLine

Selection.TypeText Text:="; "

Selection.PasteAndFormat (wdPasteDefault)

Selection.TypeBackspace

Selection.MoveLeft Unit:=wdWord, Count:=1, Extend:=wdExtend

Selection.Range.Case = wdUpperCase

strTest = Selection

test = Len(strTest) - 1

Selection.EndKey Unit:=wdLine

Do While (test > 0)

Selection.MoveLeft Unit:=wdCharacter, Count:=1

Selection.TypeText Text:=" "

Selection.MoveLeft Unit:=wdCharacter, Count:=1

test = test - 1

Loop

Selection.EndKey Unit:=wdLine

Selection.MoveRight Unit:=wdWord, Count:=1

counter = counter - 1

Loop

End Sub

:old

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...