Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointikysymykset: VB6 3 textoxia yhteen tiedostoon

juffe [11.09.2009 20:49:05]

#

Moi.

Siitä on varmaan 7v kun viimeksi olen jotain ohjelmoinut, mutta nyt innostuin taas, kun tuli tarvetta tietynlaiselle ohjelmalle, eli:
minulla on kolme eri multiline textboxia, joiden sisällä on seuraavaa

Text1.Text:

111111.111
222222.222
333333.333
444444.444

Text2.Text:
121212.121
232323.232
343434.343
454545.454

Text3.Text:
11.11
22.22
33.33
44.44

Minun pitäisi saada textboxit rivi riviltä yhdistettyä viidenteen textboxiin, näin:
text4.text:
111111.111 232323.232 11.11
222222.222 121212.121 22.22
333333.333 343434.343 33.33
444444.444 454545.454 44.44


Miten tämmöisen yhdistämisen olisi järkevintä tehdä? onko tuossa textboxissa jotain eof systeemiä, mitä muistelisin kun tietokantojen kanssa sekoilin.

T: Juffe

Grez [11.09.2009 21:49:13]

#

Ihmettelen miksi tuon text2:n rivit 1 ja 2 vaihtaa paikkaa. Sinänsähän toi on piece of cake, splittaat rivit rivinvaihdolla ja yhdistät tuohon neljänteen.

neau33 [11.09.2009 22:05:58]

#

Moro Juffe!

kokeile jatkaa sekoiluja oheisen esimerkin pohjalta...

Private Sub Command1_Click()

   Dim strArray1() As String, strArray2() As String, strArray3() As String

   strArray1 = Split(Replace(Text1.Text, vbCrLf & vbCrLf, vbCrLf), vbCrLf)
   strArray2 = Split(Replace(Text2.Text, vbCrLf & vbCrLf, vbCrLf), vbCrLf)
   strArray3 = Split(Replace(Text3.Text, vbCrLf & vbCrLf, vbCrLf), vbCrLf)
   Text4.Text = ""

   For i = UBound(strArray1) To 0 Step -1

      If Len(strArray1(i)) > 0 Then
         Exit For
      End If
      ReDim Preserve strArray1(i - 1)

   Next i

   ReDim Preserve strArray2(UBound(strArray1))
   ReDim Preserve strArray3(UBound(strArray1))

   For i = 0 To UBound(strArray1)

      If IsNull(strArray2(i)) Then
         strArray2(i) = ""
      End If

      If IsNull(strArray3(i)) Then
         strArray3(i) = ""
      End If

      Text4.Text = Text4.Text & _
      strArray1(i) & " " & strArray2(i) & " " _
      & strArray3(i) & vbCrLf

   Next i

   Erase strArray1, strArray2, strArray3

   Open Environ("HOMEDRIVE") & "\yhteen tiedostoon" For Output As #1
   Print #1, Text4.Text: Close #1

End Sub

juffe [13.09.2009 17:38:26]

#

Kiitoksia paljon koodista. Olikin miltei valmista:) Ohjelma on nyt muuten valmis, mutta täytyisi saada Save As... Eli tuon tiedoston kirjoitus käyttäjän määrittämään paikkaan. Yritin Googlella, mutta aina oli vain nuo valmiit tiedostonimet kirjoitettu suoraan koodiin. Miten onnistuu?

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta