Waarde checkbox op Word-userform naar Cell

Status
Niet open voor verdere reacties.

jackfish

Gebruiker
Lid geworden
10 sep 2010
Berichten
297
Beste mensen,

Ik heb een userform in Word 2007. Nu wil ik op dat userform ook checkboxen zetten. De waarde van de checkboxen (1 of 0) moet in een excel-file (H:\test) komen en op een regel worden weggeschreven (checkbox1 in Cell A1, checkbox2 in Cell A2 enz.) Elke keer als het userform opnieuw gebruikt wordt, moet de waarde van de checkbox onder de laatst ingevulde regel komen (tweede keer invullen userform: chekcbox1 in Cell B1, chekcbox2 in Cell B2 enz).

Het lukt om vanuit Word het excelbestand te openen.

Sub Open_Excel_File()
Set Excelapp = CreateObject("Excel.Application")
Excelapp.workbooks.Open "H:\test.xlsx"
Excelapp.Visible = True
End Sub

Maar ik krijg de waardes niet in het betreffende excelbestand. Ik kan overigens vanuit praktische overweging geen userform in excel maken. Wie kan mij helpen?

Gr Jackfish
 
Laatst bewerkt:
Code:
Private Sub CommandButton1_Click()
    Dim oExcel As Excel.Application
    Dim oWB As Excel.Workbook
    Set oExcel = New Excel.Application
    Set oWB = oExcel.Workbooks.Open("H:\Test.xlsx")
    'oExcel.Visible = True
    With oWB.Sheets(1)
        .Cells(1, .Columns.Count).End(xlToLeft).Offset(, 1) = IIf(CheckBox1, 1, 0)
        .Cells(2, .Columns.Count).End(xlToLeft).Offset(, 1) = IIf(CheckBox2, 1, 0)
    End With
    oWB.Close True
    oExcel.Quit
    Set oWB = Nothing
    Set oExcel = Nothing
End Sub
 
Laatst bewerkt:
Dank je wel Warme bakkertje, na een vinkje voor de Excel 12.0 Object Library werkt het perfect!

Jackfish
 
Het lijkt me slimmer om nieuwe gegevens onder bestaande gegevens (i.c. een nieuwe rij) te schrijven dan ernaast (in een nieuwe kolom).
Het lijkt me verder slimmer om dit in een csv bestand weg te schrijven. Als je dat opent in Excel is het meteen een Excel werkboek.

bijv.
Code:
Private Sub CommandButton1_Click()
  Open "H:\test.csv" for append as #1
    write #1, abs(checkbox1) ; abs(checkbox2)
  close #1
End Sub
 
Interessant snb,
Ik wil de data later in SPSS invoeren. In het handboek daarvan las ik net over 'column headings' en het wegschrijven van responses op rijen.

Het gebruik van een CSV-bestand (gescheiden door lijstscheidingstekens) past bij SPSS maar een xlsx-file overigens ook. Bij het openen van een xslx krijg je toch ook een excel workbook?

Omdat u tal van (voor mij) nieuwe begrippen gebruikt, krijg ik het niet werkend in een bestandje (in tegenstelling tot de post van Warme bakkertje). Zonder achterover te willen hangen, mag ik vragen om wat extra hulp bij het realiseren van uw voorstel?

Gr Jackfish
 
Als je niets aan mijn code wijzigt, alleen controleert of op drive H geschreven kan worden, kan er weinig mis lijkt me.
Kortom : onderdruk in dit geval iedere neiging om iets 'aan te passen'.
 
Laatst bewerkt:
Hallo SNB,

Met de code worden alle antwoorden goed weggeschreven in Excel, maar ik zou toch graag elk antwoord in een kolom willen hebben (nu staan ze in 1 kolom, gescheiden door komma's). Is het dan aangewezen om:
- de code van Warme bakkertje omzetten van 'kolom naar rij'?
- en een normaal excelbestand aan te houden?

Gr Jackfish

Bekijk bijlage Database SNB.zip
Bekijk bijlage Help mij SNB - word invulformulier.zip
 
Laatst bewerkt:
Code:
     'With oWB.Sheets(1).Cells(.Rows.count,1).End(xlup)
        '.Offset(1) = TextBox1
        '.Offset(1,2) = IIf(CheckBox5, 1, 0)
        '.Offset(1,3) = IIf(CheckBox1, 1, 0)
        '.Offset(1,4) = IIf(CheckBox2, 1, 0)
        '.Offset(1,5) = IIf(CheckBox3, 1, 0)
        '.Offset(1,6) = IIf(CheckBox4, 1, 0)
    ' End With
 
Laatst bewerkt:
het was ook mijn bedoeling alles weg te schrijven in kolommen.
Blijkbaar zijn jouw internationale instellingen anders.

Code:
Private Sub CommandButton1_Click()
  Open "H:\test.csv" for append as #1
    write #1, abs(checkbox1) [COLOR="#FF0000"][B],[/B][/COLOR] abs(checkbox2)[COLOR="#FF0000"][B] , [/B][/COLOR]abs(checkbox3)[B][COLOR="#FF0000"] ,[/COLOR][/B]abs(checkbox4) [COLOR="#FF0000"][B] , [/B][/COLOR]abs(checkbox5) 
  close #1
End Sub
 
Laatst bewerkt:
Dank snb en warme bakkertje voor de reacties. Ik kan ermee verder.

Gr jackfish
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan