/ Forside / Teknologi / Udvikling / VB/Basic / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
VB/Basic
#NavnPoint
berpox 2425
pete 1435
CADmageren 1251
gibson 1230
Phylock 887
gandalf 836
AntonV 790
strarup 750
Benjamin... 700
10  tom.kise 610
Variable problem - Excel
Fra : SpookiePower


Dato : 02-01-06 15:30

Jeg er lidt itvivl om dette spørgsmål høre til her eller i excel gruppen -
men nu prøver jeg mig frem, ellers må i rette mig.

Jeg er igang med at lavet et lille program som bla kan tilføje
nogle kundedata i sidste ledige række i et excel ark. Mit problem
består i denne linie - ICurrentRow = Range("b65000").End(xlUp).Offset(1, 0).Row
Linien findes i - Private Sub cmdTilfojKunde_Click() - og den finder godt nok
den rigtige ledige række, men når jeg så kalder funktion - Private Sub SaveRow() -
så bliver indholdet i variablen ændret til 5, som ikke er korrekt.

Men det som gør det endnu mere mærkeligt er at hvis jeg istedet benytter -
lCurrentRow = Worksheets("Kundeliste").UsedRange.Rows.Count + 1
Så funger det fint og der bliver gemt i den rigtige række i mit excel dokument.


- Kode -


Dim lCurrentRow As Long

Private Sub cmdTilfojKunde_Click()
lCurrentRow = Worksheets("Kundeliste").UsedRange.Rows.Count + 1
'ICurrentRow = Range("b65000").End(xlUp).Offset(1, 0).Row:
SaveRow
' Set focus to Name textbox:
TextBoxKundeNr.SetFocus
End Sub

Private Sub UserForm_Activate()
' Læser fra række 5 :
lCurrentRow = 5
LoadRow
End Sub

Private Sub LoadRow()
TextBoxKundeNr.Text = Worksheets("Kundeliste").Cells(lCurrentRow, 2).Value
TextBoxFirmaNavn.Text = Worksheets("Kundeliste").Cells(lCurrentRow, 3).Value
TextBoxCo2.Text = Worksheets("Kundeliste").Cells(lCurrentRow, 3).Value
End Sub

Private Sub SaveRow()
Worksheets("Kundeliste").Cells(lCurrentRow, 2).Value = TextBoxKundeNr.Text
Worksheets("Kundeliste").Cells(lCurrentRow, 3).Value = TextBoxFirmaNavn.Text
Worksheets("Kundeliste").Cells(lCurrentRow, 4).Value = TextBoxAdresse.Text
Worksheets("Kundeliste").Cells(lCurrentRow, 5).Value = TextBoxBy.Text
Worksheets("Kundeliste").Cells(lCurrentRow, 6).Value = TextBoxPostNr.Text
Worksheets("Kundeliste").Cells(lCurrentRow, 7).Value = TextBoxTlf.Text
Worksheets("Kundeliste").Cells(lCurrentRow, 8).Value = TextBoxEmail.Text
Worksheets("Kundeliste").Cells(lCurrentRow, 9).Value = TextBoxKontaktPerson.Text
End Sub
--
Mit fotoalbum
www.photo.activewebsite.dk



 
 
Tommy Bak (03-01-2006)
Kommentar
Fra : Tommy Bak


Dato : 03-01-06 21:04

Hej
Din kode virker fint for mig.
Pas på med at bruge UsedRange da den også går på formaterede celler
uden indhold
(farver, streger, fonte mv.)
For at være lidt mere sikker så brug denne

lCurrentRow =
Worksheets("Kundeliste").Range("b65536").End(xlUp).Offset(1, 0).Row

Jeg har nævnt worksheet'et for at være helt sikker på at den finder
sidste række på det rigtige ark.

mvh
Tommy Bak


SpookiePower (04-01-2006)
Kommentar
Fra : SpookiePower


Dato : 04-01-06 15:12

Mange tak skal du have.



Søg
Reklame
Statistik
Spørgsmål : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408914
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste