Avatar billede lillejens Nybegynder
08. oktober 2001 - 11:31 Der er 7 kommentarer og
1 løsning

paremeter for overskrive linje i excel darabase

kan man i denne kode samenlige med tidligere indsatte linjer, og hvis der er en af samme nummer så skal denne linje overskrives og man skal spørges om man ønser at overskrive, id er celle \"BA3\"

Application.ScreenUpdating = False
  Workbooks.Open Filename:=\"C:\\WINDOWS\\Skrivebord\\Database Tilbud.xls\"
  Worksheets(\"Ark1\").Select
  Range(\"A65536\").End(xlUp).Select
  iRow = ActiveCell.Row
    Windows(\"Ny Tilbud 3000 6000.xls\").Activate
  Sheets(\"TILBUDSARK\").Select
For Each rCell In Worksheets(\"TILBUDSARK\").Range(\"BA3:BA35\")
  iX = iX + 1
  Windows(\"Database Tilbud.xls\").Activate
  Worksheets(\"Ark1\").Cells(iRow + 1, iX) = rCell
Next rCell
  ActiveWindow.Close SaveChanges:=True
  Worksheets(\"TILBUDSARK\").Select
Avatar billede bak Forsker
08. oktober 2001 - 16:52 #1
efter worksheet(\"ark1).select indsæt

checktal = Worksheets(\"TILBUDSARK\").Range(\"BA3\")
Range(\"A2\").Activate
For a = 2 To Range(\"A65536\").End(xlUp).Row
    ActiveCell.Offset(rowOffset:=1, columnOffset:=0).Activate
    If ActiveCell = checktal Then
      test = MsgBox(\"Dublet. Ønsker du at overskrive?\", vbYesNo)
      felt = ActiveCell.Offset(-1, 0).Address
    Exit For
    End If
Next a
If test = vbYes Then
  Range(felt).Select
Else: Range(\"A65536\").End(xlUp).Select
End If

derefter slettes linien
range(\"A65536),end(xlup).select
Avatar billede lillejens Nybegynder
08. oktober 2001 - 17:28 #2
nu ser koden sådan ud, og den virker ikke jeg får fejl error 09
Avatar billede lillejens Nybegynder
08. oktober 2001 - 17:30 #3
hovsa hvor blev den af,? jeg prøver igen
Application.ScreenUpdating = False
  Workbooks.Open Filename:=\"C:\\WINDOWS\\Skrivebord\\Database Tilbud.xls\"
  Worksheets(\"Ark1\").Select
  checktal = Worksheets(\"TILBUDSARK\").Range(\"BA3\")
  Range(\"A2\").Activate
  For a = 2 To Range(\"A65536\").End(xlUp).Row
  ActiveCell.Offset(rowOffset:=1, columnOffset:=0).Activate
  If ActiveCell = checktal Then
  test = MsgBox(\"Dublet. Ønsker du at overskrive?\", vbYesNo)
  felt = ActiveCell.Offset(-1, 0).Address
Exit For
End If
Next a
If test = vbYes Then
  Range(felt).Select
Else: Range(\"A65536\").End(xlUp).Select
End If
iRow = ActiveCell.Row
  Windows(\"Ny Tilbud  3000 6000.xls\").Activate
  Sheets(\"TILBUDSARK\").Select
For Each rCell In Worksheets(\"TILBUDSARK\").Range(\"BA3:BA34\")
  iX = iX + 1
  Windows(\"Database Tilbud.xls\").Activate
  Worksheets(\"Ark1\").Cells(iRow + 1, iX) = rCell
Next rCell
  ActiveWindow.Close SaveChanges:=True
  Windows(\"Ny Tilbud  3000 6000.xls\").Activate
  Worksheets(\"TILBUDSARK\").Select
Avatar billede bak Forsker
08. oktober 2001 - 23:08 #4
Lillejens > opgiv lige hvilken linie det går galt i.
Prøv også at indsætte nedenstående og se om det er bedre  Dim testomr As Range
    Set testomr = Range(\"A2:\" & Range(\"A65536\").End(xlUp).Address)
    For Each C In testomr.Cells
        If Range(\"A1\").Value = C.Value Then
            test = MsgBox(\"Dublet. Ønsker du at overskrive?\", vbYesNo)
            felt = C.Offset(-1, 0).Address
            Exit For
        End If
    Next C
    If test = vbYes Then
      Range(felt).Select
    Else: Range(\"A65536\").End(xlUp).Select
    End If

Avatar billede lillejens Nybegynder
09. oktober 2001 - 07:46 #5
Hej Bak det er denne linje i den første du sendte  \'checktal = Worksheets(\"TILBUDSARK\").Range(\"BA3\")\' den anden kode kører, men den sætter gerne ind med samme nummer
Avatar billede bak Forsker
09. oktober 2001 - 08:41 #6
OK. jeg tror jeg er med
vi skal lige have aktiveret det vindue vi skal hente checktal fra.

Windows(\"Ny Tilbud  3000 6000.xls\").Activate
checktal = Worksheets(\"TILBUDSARK\").Range(\"BA3\")
Workbooks.Open Filename:=\"C:\\WINDOWS\\Skrivebord\\Database Tilbud.xls\"
  Worksheets(\"Ark1\").Select

Range(\"A2\").Activate
For a = 2 To Range(\"A65536\").End(xlUp).Row
    ActiveCell.Offset(rowOffset:=1, columnOffset:=0).Activate
    If ActiveCell = checktal Then
      test = MsgBox(\"Dublet. Ønsker du at overskrive?\", vbYesNo)
      felt = ActiveCell.Offset(-1, 0).Address
    Exit For
    End If
Next a
If test = vbYes Then
  Range(felt).Select
Else: Range(\"A65536\").End(xlUp).Select
End If
Avatar billede lillejens Nybegynder
09. oktober 2001 - 09:10 #7
Hej Bak det bliver ved med at drille jeghar sendt filerne til dig
Avatar billede lillejens Nybegynder
09. oktober 2001 - 14:07 #8
tusind tak nu virker det
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester