🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Thread View: pl.comp.bazy-danych.msaccess
3 messages
3 total messages Started by Stan Sat, 13 Jul 2019 06:31
seryjne dodanie rekordów do tabeli, (zero na początku)
#137659
Author: Stan
Date: Sat, 13 Jul 2019 06:31
30 lines
2230 bytes
Witam

Formularz - zawiera Niezwiązane pola tekstowe: PIERWSZY i OSTATNI
Tabela - zawiera pole tekstowe: NUMER (składające się z 7-miu cyfr), musi pozwalać na "0" na początku, dlatego u mnie ma format tekstu. 

Akcja po naciśnięciu przycisku formularza:
Jeśli w pola PIERWSZY i OSTATNI wpiszę: 0100001 i 0100010 - do tabeli ma zostać dopisane 10 rekordów w polu NUMER: 0100001, 0100002,... 0100010.

Niestety, kod którego używam dopisuje bez zera na początku, czyli np. 100001.

Wprawdzie potem kwerendą aktualizacyjną dodaję to zero, ale może da się to zrobić samym kodem.

Kod wygląda tak:

Sub dodaj_Click()
Dim Msg
Msg = MsgBox("wprowadzenie nowych rekordów", 52, "   Potwierdz")
Select Case Msg
Case 6 'tak
For i = Me!PIERWSZY To Me!OSTATNI
    CurrentDb.Execute "INSERT INTO Bloczki (SERIA, NUMER) SELECT '" & Me!SERIA & "', " & i & ";"
Next i
Case 7 'nie
End
End Select
End Sub

Proszę o pomoc
Pozdrawiam
Stan
Re: seryjne dodanie rekordów do tabeli, (zero na początku)
#137660
Author: Bratko Zbigniew
Date: Sun, 14 Jul 2019 13:03
42 lines
2747 bytes
W dniu sobota, 13 lipca 2019 08:31:32 UTC+2 użytkownik Stan napisał:
> Witam
> 
> Formularz - zawiera Niezwiązane pola tekstowe: PIERWSZY i OSTATNI
> Tabela - zawiera pole tekstowe: NUMER (składające się z 7-miu cyfr), musi pozwalać na "0" na początku, dlatego u mnie ma format tekstu. 
> 
> Akcja po naciśnięciu przycisku formularza:
> Jeśli w pola PIERWSZY i OSTATNI wpiszę: 0100001 i 0100010 - do tabeli ma zostać dopisane 10 rekordów w polu NUMER: 0100001, 0100002,... 0100010.
> 
> Niestety, kod którego używam dopisuje bez zera na początku, czyli np. 100001.

[...]

> Kod wygląda tak:
> 
> Sub dodaj_Click()

[...]

> End Sub

Spróbuj poniższej procedury:
'_________________________
Private Sub dodaj_Click()
Dim iMsg As Integer
Dim i As Long

  iMsg = MsgBox("wprowadzenie nowych rekordów", vbYesNo, "   Potwierdz")
  If iMsg = vbYes Then
      For i = Me!Pierwszy To Me!Ostatni
      CurrentDb.Execute "INSERT INTO Bloczki (SERIA, NUMER) SELECT '" & Me!Seria & _
                        "', " & "'" & Format$(i, "0######") & "'" & ";"
    Next
  Else
    ' anulowano
  End If

End Sub

-- 
Pozdrowienia
BraZby
Re: seryjne dodanie rekordów do tabeli, (zero na początku)
#137661
Author: Stan
Date: Sun, 14 Jul 2019 18:33
13 lines
1743 bytes
W dniu niedziela, 14 lipca 2019 15:03:27 UTC+2 użytkownik Bratko Zbigniew napisał:

> Spróbuj poniższej procedury:
[...]
> 
> -- 
> Pozdrowienia
> BraZby


Dzięki wielkie Panie Zbigniewie, zadziałało jak należy :)
Pozdrawiam
Stan
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads